Submission #659992

#TimeUsernameProblemLanguageResultExecution timeMemory
659992ymmThe short shank; Redemption (BOI21_prison)C++17
0 / 100
64 ms9760 KiB
#include <bits/stdc++.h> #define Loop(x,l,r) for (ll x = (l); x < (ll)(r); ++x) #define LoopR(x,l,r) for (ll x = (r)-1; x >= (ll)(l); --x) typedef long long ll; typedef std::pair<int, int> pii; typedef std::pair<ll , ll > pll; using namespace std; const int N = 1<<21; int a[N]; int b[N]; int n, d, t; priority_queue<int> pq; int main() { cin.tie(0) -> sync_with_stdio(false); cin >> n >> d >> t; int lst = 1e9+10; Loop (i,0,n) { cin >> a[i]; b[i] = min(lst+1, a[i]); lst = b[i]; } int cnt = 0; int ans = 0; Loop (i,0,n) { if (a[i] > t && b[i] <= t) { ++cnt; } else { if (cnt) pq.push(cnt); cnt = 0; } if (b[i] <= t) ++ans; } if (cnt) pq.push(cnt); while (pq.size() && d--) { ans -= pq.top(); pq.pop(); } cout << ans << '\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...