Submission #596223

#TimeUsernameProblemLanguageResultExecution timeMemory
596223ThegeekKnight16Uplifting Excursion (BOI22_vault)C++14
0 / 100
3331 ms16084 KiB
#include <bits/stdc++.h> using namespace std; typedef long long int ll; map<ll, ll> dp; ll border = 125e3 + 10; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); ll M, L; cin >> M >> L; for (int i = -border - M; i <= border + M; i++) dp[i] = -1e18 - 10; dp[0] = 0; for (ll i = -M; i <= M; i++) { ll A; cin >> A; int c = 1; if (i < 0) c = -1; //cerr << c << '\n'; for (int t = c*border; abs(t) <= border; t -= c) { for (ll k = 1; k <= A; k++) dp[t] = max(dp[t], dp[t - (i * k)] + k); } } //for (int i = -6; i <= 6; i++) cerr << dp[i] << " "; if (dp[L] <= -1e15 - 10) cout << "impossible"; else cout << dp[L]; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...