Submission #100339

#TimeUsernameProblemLanguageResultExecution timeMemory
100339rkocharyanSličice (COCI19_slicice)C++14
90 / 90
136 ms504 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { ios::sync_with_stdio(0); cin.tie(0); int n, m, k; cin >> n >> m >> k; vector <int> p(n); for (int i = 0; i < n; i++) { cin >> p[i]; } vector <int> b(m + 1); for (int i = 0; i <= m; i++) { cin >> b[i]; } vector <ll> dp(k + 1, 0); for (int i = 0; i < n; i++) { vector <ll> go(k + 1, 0); for (int j = 0; j <= k; j++) { for (int x = 0; x <= k; x++) { if (x > j) break; int add = j - x; if (p[i] + add > m) continue; go[j] = max(go[j], dp[x] + b[p[i] + add]); } } dp = go; } ll ans = 0; for (int i = 0; i <= k; i++) { ans = max(ans, dp[i]); } cout << ans << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...