Submission #66341994
Source Code Expand
#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<=n;i++)
#define per(i,a,n) for(int i=n;i>=a;i--)
#define pb push_back
#define SZ(v) ((int)v.size())
#define fs first
#define sc second
#define all(x) (x.begin()),(x.end())
typedef long long ll;
typedef double db;
typedef pair<int,int> pii;
int n,D,R,h[500010];
struct node{
int l,r,mx;
}tr[500010*4];
void push_up(int p){
tr[p].mx=max(tr[p*2].mx,tr[p*2+1].mx);
}
void build(int p,int l,int r){
if(l==r){
tr[p]=node({l,l,0});
return ;
}
int mid=(l+r)/2;
tr[p]=node({l,r,0});
build(p*2,l,mid);
build(p*2+1,mid+1,r);
}
void upd(int p,int id,int val){
if(tr[p].l==tr[p].r){
tr[p].mx=val;
return;
}
int mid=(tr[p].l+tr[p].r)/2;
if(id<=mid) upd(2*p,id,val);
else upd(2*p+1,id,val);
push_up(p);
}
int qr(int p,int L,int R){
if(L<=tr[p].l&&tr[p].r<=R) return tr[p].mx;
int mid=(tr[p].l+tr[p].r)/2;
int res=0;
if(L<=mid) res=max(res,qr(2*p,L,R));
if(R>=mid+1) res=max(res,qr(2*p+1,L,R));
return res;
}
int ans[500010],pos[500010];
int main(){
std::ios::sync_with_stdio(false);
cin.tie(0);
cin>>n>>D>>R;
rep(i,1,n){
cin>>h[i];
pos[h[i]]=i;
}
build(1,1,n);
int anss=0;
rep(h,1,n){
if(h-D>=1){
upd(1,pos[h-D],ans[h-D]);
}
int l=max(1,pos[h]-R),r=min(pos[h]+R,n);
ans[h]=qr(1,l,r)+1;
anss=max(anss,ans[h]);
}
cout<<anss-1<<"\n";
return 0;
}
Submission Info
| Submission Time |
|
| Task |
F - Athletic |
| User |
friedchicken |
| Language |
C++ 20 (gcc 12.2) |
| Score |
500 |
| Code Size |
1429 Byte |
| Status |
AC |
| Exec Time |
342 ms |
| Memory |
21692 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 |
3424 KiB |
| 00_sample_01.txt |
AC |
1 ms |
3412 KiB |
| 01_test_00.txt |
AC |
1 ms |
3528 KiB |
| 01_test_01.txt |
AC |
1 ms |
3532 KiB |
| 01_test_02.txt |
AC |
1 ms |
3432 KiB |
| 01_test_03.txt |
AC |
1 ms |
3488 KiB |
| 01_test_04.txt |
AC |
1 ms |
3504 KiB |
| 01_test_05.txt |
AC |
1 ms |
3628 KiB |
| 01_test_06.txt |
AC |
132 ms |
18980 KiB |
| 01_test_07.txt |
AC |
342 ms |
21396 KiB |
| 01_test_08.txt |
AC |
55 ms |
11208 KiB |
| 01_test_09.txt |
AC |
47 ms |
7492 KiB |
| 01_test_10.txt |
AC |
48 ms |
11360 KiB |
| 01_test_11.txt |
AC |
230 ms |
20768 KiB |
| 01_test_12.txt |
AC |
50 ms |
11624 KiB |
| 01_test_13.txt |
AC |
3 ms |
3708 KiB |
| 01_test_14.txt |
AC |
37 ms |
8060 KiB |
| 01_test_15.txt |
AC |
36 ms |
7464 KiB |
| 01_test_16.txt |
AC |
157 ms |
19452 KiB |
| 01_test_17.txt |
AC |
217 ms |
20340 KiB |
| 01_test_18.txt |
AC |
275 ms |
21600 KiB |
| 01_test_19.txt |
AC |
340 ms |
21564 KiB |
| 01_test_20.txt |
AC |
182 ms |
21692 KiB |
| 01_test_21.txt |
AC |
326 ms |
21452 KiB |
| 01_test_22.txt |
AC |
194 ms |
21524 KiB |
| 01_test_23.txt |
AC |
329 ms |
21568 KiB |
| 01_test_24.txt |
AC |
153 ms |
21472 KiB |
| 01_test_25.txt |
AC |
35 ms |
21604 KiB |
| 01_test_26.txt |
AC |
34 ms |
21540 KiB |
| 01_test_27.txt |
AC |
149 ms |
21576 KiB |
| 01_test_28.txt |
AC |
150 ms |
21576 KiB |
| 01_test_29.txt |
AC |
92 ms |
21472 KiB |
| 01_test_30.txt |
AC |
250 ms |
21572 KiB |
| 01_test_31.txt |
AC |
224 ms |
21688 KiB |
| 01_test_32.txt |
AC |
250 ms |
21472 KiB |
| 01_test_33.txt |
AC |
258 ms |
21608 KiB |
| 01_test_34.txt |
AC |
255 ms |
21556 KiB |
| 01_test_35.txt |
AC |
257 ms |
21568 KiB |
| 01_test_36.txt |
AC |
1 ms |
3440 KiB |