Submission #776936

#TimeUsernameProblemLanguageResultExecution timeMemory
776936tch1cherinThe short shank; Redemption (BOI21_prison)C++17
15 / 100
2077 ms9044 KiB
#include <bits/stdc++.h> using namespace std; int main() { cin.tie(nullptr)->sync_with_stdio(false); int n, d, T; cin >> n >> d >> T; vector<int> t(n); for (int &v : t) { cin >> v; } vector<int> l(n, n); for (int i = 0; i < n; i++) { for (int j = i; j >= 0; j--) { if (j + T - t[j] >= i) { l[i] = j; break; } } } for (int i = 0; i < d; i++) { pair<int, int> ans = {0, 0}; for (int L = n - 1; L >= 0; L--) { int cnt = 0; for (int x = L; x < n; x++) { if (l[x] < L) { cnt++; } } ans = max(ans, {cnt, L}); } for (int x = ans.second; x < n; x++) { if (l[x] < ans.second) { l[x] = n; } } } cout << n - count(l.begin(), l.end(), n) << "\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...