제출 #1191721

#제출 시각아이디문제언어결과실행 시간메모리
1191721petezaCloud Computing (CEOI18_clo)C++20
100 / 100
231 ms1352 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; int n, m, a, b, c; vector<tuple<int, int, int, int>> events; ll dp[100055]; int main() { for(int i=1;i<100055;i++) dp[i] = -99999999999999999ll; cin.tie(0) -> sync_with_stdio(0); cin >> n; for(int i=0;i<n;i++) { cin >> a >> b >> c; events.emplace_back(b, 2, a, c); } cin >> m; for(int i=0;i<m;i++) { cin >> a >> b >> c; events.emplace_back(b, 1, a, c); } sort(events.rbegin(), events.rend()); for(auto &e:events) { int evetype = get<1>(e), val = get<3>(e), amo = get<2>(e); if(evetype == 1) { for(int i=0;i<=100000;i++) dp[i] = max(dp[i], dp[i+amo] + val); } else { for(int i=100000;i>=0;i--) dp[i+amo] = max(dp[i+amo], dp[i] - val); } } cout << *max_element(dp, dp+100055); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...