| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1283846 | trungmegalikeit | The short shank; Redemption (BOI21_prison) | C++20 | 44 ms | 3352 KiB |
#include<bits/stdc++.h>
using namespace std;
bool cmp(int a, int b){
return a > b;
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
if(fopen("PLAYDOM.inp","r")){
freopen("PLAYDOM.inp","r",stdin);
freopen("PLAYDOM.out","w",stdout);
}
int n,d,t;
cin>>n>>d>>t;
vector<int> a(1);
int fs = 0;
for(int i = 1; i <= n; i++){
int x;
cin>>x;
if(x <= t && fs == 0) fs = i;
a.emplace_back(x);
}
vector<int> block;
int day = 0, lastbl = fs, safe = 0;
for(int i = fs; i <= n; i++){
bool on = 0;
//cout<<"CON: "<<i - lastbl <<' '<< t-a[lastbl]<<'\n';
if(a[i] <= t){
if(day > 0) block.emplace_back(day);
lastbl = i;
//cout<<i<<' '<<day<<'\n';
day = 0;
}
else if(i - lastbl < t-a[lastbl]) day++;
else{
if(day > 0) block.emplace_back(day);
safe++;
day = 0;
}
//cout<<"CURR "<<day<<' '<<safe<<'\n';
}
sort(block.begin(),block.end(),cmp);
int ans = 0;
for(int i = 0; i <= d-1 && i < block.size(); i++) ans += block[i];
//cout<<ans<<'\n';
cout<<n-ans-safe<<'\n';
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
