只对了七个点,其他全WA
实在找不到了。
#include<bits/stdc++.h>
using namespace std;
struct Node
{
int x,y;
}a[1000005];
deque<Node>d,q;
int main()
{
int n,m,c;
bool flag=0;
scanf("%d%d%d",&n,&m,&c);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i].x);
a[i].y=i;
while(!d.empty()&&d.front().y<=i-m)d.pop_front();
while(!q.empty()&&q.front().y<=i-m)q.pop_front();
while(!d.empty()&&d.front().x<=a[i].x)d.pop_back();
while(!q.empty()&&q.front().x>=a[i].x)q.pop_back();
d.push_back(a[i]);
q.push_back(a[i]);
if(i>=m&&d.front().x-q.front().x<=c)
{
printf("%d\n",i-m+1);
flag=1;
}
}
if(!flag)cout<<"NONE";
return 0;
}