超时提交poj 2823 Sliding Window dp

每日一贴,今天的内容关键字为超时提交

    枯燥队列的目题。

    意注用c++提交,否则轻易超时

    每日一道理
俄国作家契诃夫说:“有大狗,有小狗,小狗不该因为大狗的存在而心慌意乱。所有的狗都应该叫,就让他各自用上帝给他的声音。
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int maxn=1e6+9;
struct
{
    int data,id;
}que[maxn];
int a[maxn];
int n,k;
void work(int tmp)
{


    int st=1,ed=0;
    for(int i=1;i<k;i++)
    {
        while(ed>=st&&que[ed].data*tmp>=a[i]*tmp) ed--;
        que[++ed].data=a[i];
        que[ed].id=i;
    }
    for(int i=k;i<=n;i++)
    {
        while(ed>=st&&que[ed].data*tmp>=a[i]*tmp) ed--;
        que[++ed].data=a[i];
        que[ed].id=i;
        while(i-que[st].id>=k) st++;
        printf("%d ",que[st].data);
    }
    printf("\n");
}


int main()
{
    scanf("%d %d",&n,&k);
    for(int i=1;i<=n;i++)
    scanf("%d",&a[i]);
    work(1);
    work(-1);
    return 0;
}

文章结束给大家分享下程序员的一些笑话语录: N多年前,JohnHein博士的一项研究表明:Mac用户平均IQ要比PC用户低15%。超过6000多的参加者接受了测试,结果清晰的显示IQ比较低的人会倾向于使用Mac。Mac用户只答对了基础问题的75%,而PC用户却高达83%。

posted @ 2013-05-01 12:17  坚固66  阅读(180)  评论(0编辑  收藏  举报