Submission #776941

#TimeUsernameProblemLanguageResultExecution timeMemory
776941tch1cherinThe short shank; Redemption (BOI21_prison)C++17
0 / 100
0 ms212 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 = min(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...