Submission #1218105

#TimeUsernameProblemLanguageResultExecution timeMemory
1218105johuthaCloud Computing (CEOI18_clo)C++20
0 / 100
148 ms327680 KiB
#include <iostream> #include <vector> #define ll long long using namespace std; /* Sample: 4 4 2200 700 2 1800 10 20 2550 9999 4 2000 750 3 1 1500 300 6 1900 1500 3 2400 4550 */ const int C = 2000 * 50 + 1; signed main() { ios_base::sync_with_stdio(0); cin.tie(0); int n; cin >> n; vector<pair<ll,ll>> transactions; for (int i = 0; i < n; i++) { int c, f, v; cin >> c >> f >> v; transactions.emplace_back(c, -v); } int m; cin >> m; for (int i = 0; i < m; i++) { int c, f, v; cin >> c >> f >> v; transactions.emplace_back(-c, v); } int N = n + m; vector<vector<ll>> dp(N + 1, vector<ll>(C, -1e18)); dp[0][0] = 0; for (int i = 0; i < N; i++) for (int j = 0; j < C; j++) { dp[i + 1][j] = dp[i][j]; if (j - transactions[i].first >= 0 && j - transactions[i].first < C) dp[i + 1][j] = max(dp[i+1][j], dp[i][j - transactions[i].first] + transactions[i].second); } ll ans = 0; for (auto j: dp[N]) ans = max(ans, j); cout << ans << "\n"; }
#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...