1 条题解

  • 0
    @ 2025-8-24 21:33:10

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Berlin_Jacor
    爱意东升西落,浪漫至死不渝

    搬运于2025-08-24 21:33:10,当前版本为作者最后更新于2019-10-03 09:37:28,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    STL大法好(雾

    就用队列就好了,一定记得要优先考虑数据结构

    (挑战最短代码QAQ,然后我输了

    每次判断队头是否符合要求,将不符合要求的删除掉

    #include<bits/stdc++.h>
    using namespace std;
    const int N=1000005;
    int n,k;
    struct node{int v,id;}a[N];
    deque<node> qmin,qmax;
    int main()
    {
        cin>>n>>k;
        for(int i=1;i<=n;i++)cin>>a[i].v,a[i].id=i;
        for(int i=1;i<=n;i++)
        {
            while(!qmax.empty()&&qmax.back().v<=a[i].v)qmax.pop_back();
            qmax.push_back(a[i]);
            if(qmax.front().id==i-k)qmax.pop_front();
            if(i>=k)cout<<qmax.front().v<<endl;
        }
        return 0;
    }
    

    这题其实可以用来练习线段树,但我不会啊,我太菜了,,,

    另外推荐P1886和P1440,是三倍经验哦

    打题解不易,留个Zan再走吧

    虽然自己写代码很慢,收获的却是自己

    • 1

    信息

    ID
    997
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    0
    已通过
    0
    上传者