求助大佬!!

P1440 求m区间内的最小值

LOFTER_OI @ 2018-11-07 09:52:06

单调队列迷之wa点80分。。。。

#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000016],q[1000006];
int main()
{
    //freopen("a.in","r",stdin);
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++) scanf("%d",&a[i]);
    printf("0\n");
    int h=1,t=0;
    for(int i=1;i<=n-1;i++)
    {
        while(h<=t&&a[i]<=a[q[t]]) t--;
        q[++t]=i;
        while(h<=t&&q[h]+m<=i) h++;
        printf("%d\n",a[q[h]]);
    }
}


|