Submission #218960

#TimeUsernameProblemLanguageResultExecution timeMemory
218960pavementCloud Computing (CEOI18_clo)C++17
0 / 100
689 ms101752 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define mp make_pair #define mt make_tuple #define pb push_back #define ppb pop_back #define eb emplace_back typedef long double ld; int N, M, R, c[2005], f[2005], v[2005], C[2005], F[2005], V[2005], mem[255][25005]; int dp(int cur, int n, int lim) { if (n < 0) return -1e9; if (cur == N + M + 1) return 0; if (mem[cur][n + 12500] != -1) return mem[cur][n + 12500]; int r = -1; if (cur > N && F[cur - N] <= lim) r = max(dp(cur + 1, n, lim), dp(cur + 1, n - C[cur - N], lim) + V[cur - N]); else if (cur <= N && f[cur] >= lim) r = max(dp(cur + 1, n, lim), dp(cur + 1, n + c[cur], lim) - v[cur]); else r = dp(cur + 1, n, lim); return mem[cur][n + 12500] = r; } main() { ios::sync_with_stdio(0); cin.tie(0); cin >> N; for (int i = 1; i <= N; i++) cin >> c[i] >> f[i] >> v[i]; cin >> M; for (int i = 1; i <= M; i++) cin >> C[i] >> F[i] >> V[i]; for (int i = 1; i <= N; i++) { memset(mem, -1, sizeof mem); R = max(R, dp(1, 0, f[i])); } cout << R << '\n'; }

Compilation message (stderr)

clo.cpp:24:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main() {
      ^
#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...