【题解】第k个出队

题意

有一个有个元素的队列,你可以控制第个出队的元素是队首还是队尾,除此之外你还可以额外控制次选择出队的元素是队尾或队首。求第次出队的元素最优情况下至少会大于多少呢。

题解

由于要最优的情况下,那么这额外的控制次肯定控制在前次出队中才有贡献。首先让。我们直接暴力去枚举就可以了假设我们在轮到我们前面已经有个人从队首拿了元素,那么也就是说剩下的个人是从队尾拿的,我们在第次能能拿的元素也就是,我们在枚举的过程中由于是求最差情况下的最大值,所以我们在更新的时候再取个

复杂度

时间复杂度

代码

#include <bits/stdc++.h>
using namespace std;
const int inf=0x3f3f3f3f;
const int N=1e3+5;
int a[N];
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n,m,k;
        scanf("%d%d%d",&n,&m,&k);
        m=min(m,k-1);
        for (int i = 1; i <= n; i++)
            scanf("%d",&a[i]);
        int ans = 0;
        for (int i = 0; i <= m; i++)
        {
            int minn = inf;
            for (int j = i + 1; j <= k - m + i; j++)
                minn = min(minn, max(a[j], a[j + n - k]));
            ans = max(ans, minn);
        }
        printf("%d\n",ans);
    }
    return 0;
}
全部评论

相关推荐

Twilight_m...:表格简历有点难绷。说说个人看法: 1.个人基本情况里好多无意义信息,什么婚姻状况、健康状况、兴趣爱好、户口所在地、身份证号码、邮政编码,不知道的以为你填什么申请表呢。 2.校内实践个人认为对找工作几乎没帮助,建议换成和测开有关的项目,实在没得写留着也行。 3.工作经历完全看不出来是干什么的,起码看着和计算机没啥关系,建议加强描述,写点你在工作期间的实际产出、解决了什么问题。 4.个人简述大而空,看着像AI生成,感觉问题最大。“Python,C,C++成为我打造高效稳定服务的得力工具”、“我渴望凭借自身技术知识与创新能力,推动人工智能技术的应用发展,助力社会实现智能化转型”有种小学作文的美感。而且你确定你个人简述里写的你都会嘛?你AI这块写的什么“深入研究”,发几篇顶会的硕博生都不一定敢这么写。而且你AI这块的能力和软测也完全无关啊。个人简述建议写你对哪些技术栈、哪些语言、哪些生产工具的掌握,写的有条理些,而且最好是和测开强相关的。
点赞 评论 收藏
分享
06-12 10:50
门头沟学院 Java
你的不定积分没加C:我怎么在学院群看到了同样的话
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务