#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
vector<pair<int, pair<int, int>>> ev;
for (int r = 0; r < 2; ++r) {
int n;
cin >> n;
while (n--) {
int a, b, c;
cin >> a >> b >> c;
if (r == 0) c *= -1;
else a *= -1;
ev.push_back({b, {a, c}});
}
}
sort(ev.rbegin(), ev.rend());
vector<ll> dp{0};
for (auto& e : ev) {
vector<ll> ndp = dp;
for (int i = 0; i < (int)dp.size(); ++i) {
int j = i + e.second.first;
ll val = dp[i] + e.second.second;
if (j >= 0) {
while ((int)ndp.size() <= j) ndp.push_back(LLONG_MIN / 2);
ndp[j] = max(ndp[j], val);
}
}
dp = ndp;
}
ll res = 0;
for (ll x : dp) res = max(res, x);
cout << res << '\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |