题意:n个数n个人依次取数,每个人只能取第一个数或最后一个数,你可以从一开始控制k个人取最前边或是最后边的数,你排在第m位,能取到的最大的数是多少。所有人取数都是最优策略(不是每次取最大数)。

题解:假设k是0,那么就是n个人,你第m个取,此时可以从0到m-1遍历表示有i个人从前边取,那么剩下的 m-1-i个人就是从后边取得,然后轮到你取得时候就是在i+1个数和n-(m-i-1)个数取最大的,从这些最大值中取最小的就是答案了;k不是0的时候,因为可以控制k个人,所以你肯定要使他们的取法最有利于你,那么,遍历从0到k表示有i个人被你控制从前边取,剩下的人从后边取,这样就变成了k是0,有n-k个数,你是第m-k-1个取,求取得的最大值,根据上边k=0的求法在所有求得的最小值中取最大值就是结果了。

 1 #include<bits/stdc++.h>
2 using namespace std;
3
4 int a[3510];
5
6 int main()
7 {
8 int t;
9 scanf("%d",&t);
10 while(t--){
11 int n,m,k;
12 scanf("%d%d%d",&n,&m,&k);
13 memset(a,0,sizeof(a));
14 for(int i=0;i<n;i++){
15 scanf("%d",&a[i]);
16 }
17 int ans=0;
18 if(m<=k+1){
19 for(int i=0;i<m;i++){
20 ans=max(ans,a[i]);
21 }
22 for(int i=n-1;i>=n-m;i--){
23 ans=max(ans,a[i]);
24 }
25 printf("%d\n",ans);
26 }
27 else{
28 ans=0x3f3f3f3f;
29 int p=m-k;
30 if(k==0){
31 for(int i=0;i<m;i++){
32 int sum=0;
33 sum=max(a[i],a[n-m+i]);
34 ans=min(ans,sum);
35 }
36 printf("%d\n",ans);
37 }
38 else {
39 int q=0;
40 for(int i=0;i<=k;i++){
41 ans=0x3f3f3f3f;
42 for(int j=i;j<p+i;j++){
43 int sum=0;
44 sum=max(a[j],a[(n-k+i)-(p+i)+j]);
45 ans=min(ans,sum);
46 }
47 q=max(q,ans);
48 }
49 printf("%d\n",q);
50 }
51 }
52 }
53 return 0;
54 }

cf1291c-Mind Control的更多相关文章

  1. 企业管理软件开发架构之七 Object Control设计与运用

    在做查询时,经常遇到一类需求.请看下面的SQL语句查询 SELECT * FROM Company WHERE CompanyCode='Kingston' AND Suspended='N' AND ...

  2. 文字处理控件TX Text Control的使用

    这几天一直在研究TX Text Control的使用,由于这方面的资料相对比较少,主要靠下载版本的案例代码进行研究,以及官方的一些博客案例进行学习,使用总结了一些心得,特将其总结出来,供大家分享学习. ...

  3. Sublime text 2/3 中 Package Control 的安装与使用方法

    Package Control 插件是一个方便 Sublime text 管理插件的插件,但因为 Sublime Text 3 更新了 Python 的函数,API不同了,导致基于 Python 开发 ...

  4. Java 性能分析工具 , 第 3 部分: Java Mission Control

    引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...

  5. Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details

    thinkphp 在Apache上配置启用伪静态,重启Apache1 restart 竟然失败了,报错 Job for httpd.service failed because the control ...

  6. Neural Pathways of Interaction Mediating the Central Control of Autonomic Bodily State 自主神经系统-大脑调节神经通路

    Figure above: Critchley H D, Harrison N A. Visceral influences on brain and behavior[J]. Neuron, 201 ...

  7. Ubuntu[1]安装Vesta Control Panel

    参考:http://www.5013.org/archives/819 1)登录 ssh ubuntu@139.199.9.173 ubuntu@139.199.9.173's password: 重 ...

  8. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' heade

    XMLHttpRequest cannot load http://10.164.153.37:8050/WebService/WebService.asmx/wsGetStreetData. Res ...

  9. Sublime Text 3 安装Package Control

    原来Subl3安装Package Control很麻烦,现在简单的方法来了 一.简单的安装方法 使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令行,粘贴如下代码: ...

  10. Optimistic Concurrency VS. Pessimistic Concurrency Control

    原创地址:http://www.cnblogs.com/jfzhu/p/4009918.html 转载请注明出处   (一)为什么需要并发控制机制 并发控制机制是为了防止多个用户同时更改同一条数据,也 ...

随机推荐

  1. 【C++】《Effective C++》第二章

    第二章 构造/析构/赋值运算 条款05:了解C++默默编写并调用哪些函数 默认函数 一般情况下,编译器会为类默认合成以下函数:default构造函数.copy构造函数.non-virtual析构函数. ...

  2. LeetCode200 岛屿的个数

    给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量.一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的.你可以假设网格的四个边均被水包围. 示例 1: 输入: ...

  3. Linux学习笔记 | docker基本命令

    Docker的三大核心概念:镜像.容器.仓库 镜像:类似虚拟机的镜像.用俗话说就是安装文件. 容器:类似一个轻量级的沙箱,容器是从镜像创建应用运行实例,可以将其启动.开始.停止.删除.而这些容器都是相 ...

  4. git 基本命令和操作

    设置全局用户名+密码 $ git config --global user.name 'runoob' $ git config --global user.email test@runoob.com ...

  5. mysql 设置外键约束时如何删除数据

    Mysql中如果表和表之间建立的外键约束,则无法删除表及修改表结构 解决方法是在Mysql中取消外键约束: SET FOREIGN_KEY_CHECKS=0; 然后将原来表的数据导出到sql语句,重新 ...

  6. django 中连接mysql数据库的操作步骤

    django中连接mysql数据库的操作步骤: 1 settings配置文件中 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mys ...

  7. Centos 7.x系统下忘记用户登录密码,重置root密码的方法

    转载的,作为一个参考保存.谢谢:https://blog.csdn.net/userpass_word/article/details/81807316 1.开机后进入以下界面,然后按Esc或者E键编 ...

  8. SQL函数知识点

    SQL函数知识点 SQL题目(一) 1.查询部门编号为10的员工信息 select*from emp where empno=10; 2.查询年薪大于3万的人员的姓名与部门编号 select enam ...

  9. 整合阿里云OSS

    整合阿里云OSS 一.对象存储OSS 为了解决海量数据存储与弹性扩容,采用云存储的解决方案- 阿里云OSS. 1.开通"对象存储OSS"服务 (1)申请阿里云账号 (2)实名认证 ...

  10. Compile-time Dependency Injection With Go Cloud's Wire 编译时依赖注入 运行时依赖注入

    Compile-time Dependency Injection With Go Cloud's Wire - The Go Blog https://blog.golang.org/wire Co ...