Submission #66415030
Source Code Expand
#include<bits/stdc++.h>
#include<atcoder/segtree>
using namespace std;
using S=int;
S op(S x,S y){return max(x,y);}
S e(){return (int)-1e9;}
int main(){
int n,d,r;
cin >> n >> d >> r;
vector<int>h(n);
for(int i=0;i<n;i++)cin >> h[i];
vector<pair<int,int>>temp;
for(int i=0;i<n;i++){
temp.push_back({h[i],~i});
temp.push_back({h[i]-d,i});
}
sort(temp.rbegin(),temp.rend());
atcoder::segtree<S,op,e>seg(n);
vector<int>dp(n,-1e9);
for(auto[v,i]:temp){
if(i<0){
i=~i;
dp[i]=max(0,seg.prod(max(0,i-r),min(n,i+r+1))+1);
}else{
seg.set(i,dp[i]);
}
}
cout << *max_element(dp.begin(),dp.end()) << endl;
}
Submission Info
| Submission Time | |
|---|---|
| Task | F - Athletic |
| User | kyopro_friends |
| Language | C++ 20 (gcc 12.2) |
| Score | 500 |
| Code Size | 665 Byte |
| Status | AC |
| Exec Time | 242 ms |
| Memory | 19036 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3484 KiB |
| 00_sample_01.txt | AC | 1 ms | 3504 KiB |
| 01_test_00.txt | AC | 2 ms | 3552 KiB |
| 01_test_01.txt | AC | 2 ms | 3548 KiB |
| 01_test_02.txt | AC | 1 ms | 3492 KiB |
| 01_test_03.txt | AC | 1 ms | 3540 KiB |
| 01_test_04.txt | AC | 2 ms | 3492 KiB |
| 01_test_05.txt | AC | 2 ms | 3560 KiB |
| 01_test_06.txt | AC | 125 ms | 13644 KiB |
| 01_test_07.txt | AC | 224 ms | 18876 KiB |
| 01_test_08.txt | AC | 59 ms | 8280 KiB |
| 01_test_09.txt | AC | 38 ms | 6416 KiB |
| 01_test_10.txt | AC | 62 ms | 8704 KiB |
| 01_test_11.txt | AC | 176 ms | 17580 KiB |
| 01_test_12.txt | AC | 70 ms | 9232 KiB |
| 01_test_13.txt | AC | 4 ms | 3608 KiB |
| 01_test_14.txt | AC | 49 ms | 7008 KiB |
| 01_test_15.txt | AC | 32 ms | 6004 KiB |
| 01_test_16.txt | AC | 148 ms | 15004 KiB |
| 01_test_17.txt | AC | 184 ms | 16436 KiB |
| 01_test_18.txt | AC | 242 ms | 18956 KiB |
| 01_test_19.txt | AC | 226 ms | 18900 KiB |
| 01_test_20.txt | AC | 219 ms | 18980 KiB |
| 01_test_21.txt | AC | 240 ms | 18956 KiB |
| 01_test_22.txt | AC | 218 ms | 18876 KiB |
| 01_test_23.txt | AC | 236 ms | 18984 KiB |
| 01_test_24.txt | AC | 207 ms | 18940 KiB |
| 01_test_25.txt | AC | 211 ms | 18952 KiB |
| 01_test_26.txt | AC | 216 ms | 18972 KiB |
| 01_test_27.txt | AC | 121 ms | 18932 KiB |
| 01_test_28.txt | AC | 137 ms | 18896 KiB |
| 01_test_29.txt | AC | 202 ms | 18944 KiB |
| 01_test_30.txt | AC | 193 ms | 18956 KiB |
| 01_test_31.txt | AC | 195 ms | 18900 KiB |
| 01_test_32.txt | AC | 193 ms | 18968 KiB |
| 01_test_33.txt | AC | 196 ms | 18896 KiB |
| 01_test_34.txt | AC | 195 ms | 18980 KiB |
| 01_test_35.txt | AC | 196 ms | 19036 KiB |
| 01_test_36.txt | AC | 1 ms | 3456 KiB |