0_0_39353366_24745.cpp: In function 'int main()':
0_0_39353366_24745.cpp:4:143: error: 'memset' was not declared in this scope
4 | using namespace std;const int N=1e6+1145;int a[N];int mx[N],mn[N];int t1,t2,e1,e2;int l;int main(){int n,m,k;while(~scanf("%d%d%d",&n,&m,&k)){memset(a,0,sizeof(a));memset(mx,0,sizeof(mx));memset(mn,0,sizeof(mn));int ans=0;for(int i=1;i<=n;i++){int a[n];scanf("%d",&a+i);}for(int r=1;r<=n;r++){while(t1>e1&&a[mx[t1-1]]<a[r]&&mx[t1-1]>l) t1--;mx[t1++]=r;while(t2>e2&&a[mn[t2-1]]>a[r]&&mn[t2-1]>l) t2--;mn[t2++]=r;while(a[mx[e1]]-a[mn[e2]]>k&&l<r){l=min(mx[e1],mn[e2]);for(int i=e1;i<=r;i++){if(mx[i]<=l) e1++;}for(int i=e2;i<=r;i++){if(mn[i]<=l) e2++;}}if(a[mx[e1]]-a[mn[e2]]>=m) ans=max(ans,r-l);}printf("%d\n",ans);}return 0;}
| ^~~~~~
0_0_39353366_24745.cpp:4:1: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
3 | #include<algorithm>
+++ |+#include <cstring>
4 | using namespace std;const int N=1e6+1145;int a[N];int mx[N],mn[N];int t1,t2,e1,e2;int l;int main(){int n,m,k;while(~scanf("%d%d%d",&n,&m,&k)){memset(a,0,sizeof(a));memset(mx,0,sizeof(mx));memset(mn,0,sizeof(mn));int ans=0;for(int i=1;i<=n;i++){int a[n];scanf("%d",&a+i);}for(int r=1;r<=n;r++){while(t1>e1&&a[mx[t1-1]]<a[r]&&mx[t1-1]>l) t1--;mx[t1++]=r;while(t2>e2&&a[mn[t2-1]]>a[r]&&mn[t2-1]>l) t2--;mn[t2++]=r;while(a[mx[e1]]-a[mn[e2]]>k&&l<r){l=min(mx[e1],mn[e2]);for(int i=e1;i<=r;i++){if(mx[i]<=l) e1++;}for(int i=e2;i<=r;i++){if(mn[i]<=l) e2++;}}if(a[mx[e1]]-a[mn[e2]]>=m) ans=max(ans,r-l);}printf("%d\n",ans);}return 0;}
|