题目地址:https://codeforces.com/contest/1486/problem/C2
另一道入门交互题:https://codeforces.com/contest/679/problem/A

  • 题目:
    大小为n=105n=10^5n=105的数组,每次询问为 ?lr?\ l\ r? l r 格式,询问[l,r][l,r][l,r]区间的次大值在整个数组中的位置(从111开始)。
    在最多进行202020次询问之后,以 !pos!\ pos! pos 的格式输出最大值在数组中的位置pospospos。

input:
5
3
4
output:
? 1 5
? 4 5
! 1

  • 思路:

    • 首先询问?1n?\ 1\ n? 1 n,获得整个数组中次大值的位置p1p1p1
    • 再询问?1p1?\ 1\ p1? 1 p1,获得[1,p1][1,p1][1,p1]中次大值的位置p2p2p2。若p2=p1p2=p1p2=p1可以推断出整个数组的最大值在p1p1p1左侧(特殊考虑p1=1p1=1p1=1的情况),否则在右侧。
    • 若数组最大值在p1p1p1右侧,即pos∈[p1+1,n]pos\in[p1+1, n]pos∈[p1+1,n],那么pos=min{i}pos=min\{i\}pos=min{i}其中iii满足(?p1i)(?\ p1\ i)(? p1 i)的返回值等于p1p1p1;
      若数组最大值在p1p1p1左侧,同理pos∈[1,p1−1]pos\in[1, p1-1]pos∈[1,p1−1],pos=max{i}pos=max\{i\}pos=max{i}其中iii满足(?ip1)(?\ i\ p1)(? i p1)的返回值等于p1p1p1。通过二分法求的最大值的结果。

注意代码中二分的写法!!(我确实不会写二分,清楚的记得19年的暑期多校一道medium难度的字符串题,思路正确,但二分写炸了,最后还是T了

【CF703-Div2-C1/2】C2. Guessing the Greatest(交互题-思维+二分)相关推荐

  1. Codeforces Round #703 (Div. 2) C. Guessing the Greatest

    C1. Guessing the Greatest (easy version) C2. Guessing the Greatest (hard version) Codeforces C题Guess ...

  2. CodeForces - 1486C2 Guessing the Greatest (hard version)(二分+交互)

    题目链接:点击查看 题目分析:给出一个长度为 nnn 的序列,现在可以进行最多 202020 次查询,每次查询可以询问区间 [l,r][l,r][l,r] 中次大值的位置,现在要求在查询后输出最大值的 ...

  3. c程序设计语言中printf,编程序 用getchar函数读入两个字符c1和c2,然后分别用putchar和printf函数输出这两个字符。请问...

    编程序,用getchar函数读入两个字符给c1和c2,然后分别用putchar和printf函数输出这两个字符.请问: 1. 变量C1,C2应定义为字符型或整型?或二者皆可? 答:在这个题目里,变量C ...

  4. SAP QM 采样方案的c1 d1 c2 d2 --多重采样

    SAP QM 采样方案的c1 d1 c2 d2 --多重采样 使用QDP1创建采样方案的时候为什么只要填写c1 d1不用填写c2 d2等等呢? 首先,C1/C2-C7代表接受数 D1/D2-D7代表拒 ...

  5. 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 装载问题要求确定,是否有一个合理的装载方案可将这n

    一.问题描述 有一批共n个集装箱要装上2艘载重量分别为C1和C2的轮船,其中集装箱i的重量为wi,且 ∑i=1nwi≤c1+c2\sum _{i=1}^{n} wi\leq c1+c2∑i=1n​wi ...

  6. c1和c2语言水平,为什么驾校不建议考C2,驾驶证C1和C2的区别

    加盟滴滴请猛戳这里>> 最近几年学车的人群剧增,这跟大伙儿的生活水平的提升有脱离不了的干系.学车面临的第一个问题就是学什么车,因为驾驶证有C1和C2的区别.很多驾校都不建议学员考C2,其中 ...

  7. 1、定义一个复数类Complex,使得下面的代码能够工作。 Complex c1(3,5); Complex c2=4.5; c1.add(c2); c1.show();

    一.问题描述 1.定义一个复数类Complex,使得下面的代码能够工作. Complex c1(3,5); Complex c2=4.5; c1.add(c2); c1.show(); #includ ...

  8. 计算机绘图c2是什么,Cad里c2表示(cad中C1(C2)这样的符号是什么意思)

    CAD倒角标注里面的C1 C2是表示是什么? C1表示1 X 45°倒角:C2表示 1 X 45°倒角. CAD全称计算机辅助设计指利用计算机及其图形设备帮助设计人员进行设计工作. 在设计中通常要用计 ...

  9. mysql字连接查询实现至少选修C1和C2两门课的学生和一个都没有被选中的课程

    至少选修C1和C2两门课的学生 一个都没有被选中的课程 至少被一个同学选中的课程 select cno,cname from C where exists(select * from sc where ...

  10. c语言中abcd的大小,技巧总结:驾照中ABCD什么意思区别 应该学C1还是C2

    驾照中ABCD什么意思区别 驾照类别:A1.A2.A3.B1.B2.C1.C2.C3.C4.D.E.F.M.N.P,共15个类别 驾照里A表示大型客车,B表示大型货车,C表示小型汽车 A1 大型载客汽 ...

最新文章

  1. 通过RS232发送和接收短信(二)
  2. 在Python中用Selenium执行JavaScript
  3. 转:构建高性能ASP.NET站点 第五章—性能调优综述(中篇)
  4. 三个activity之间跳转 数据传递_第二百四十二回:Android中Fragment之间的数据传递概述...
  5. Oracle数据库常用技术
  6. 在 ASP.NET Core 中安装 MVC
  7. 自己封装的一个原生JS拖动方法。
  8. hive中实现行转列_漫谈数据仓库之拉链表(原理、设计以及在Hive中的实现)
  9. 轻松弄懂var、let、const之间的区别
  10. Selenium API-WebElement 属性
  11. 数据结构:八皇后、N皇后
  12. 解决navicat在未联网的情况下访问不了MySQL数据库的现象
  13. MAC 上的 Live Writer : ecto
  14. 从autotool迁移到cmake
  15. CNNIC:第35次中国互联网络发展状况统计报告
  16. 为战而生的联想拯救者Pro,你值得拥有的手游神器
  17. [POI2006] TET-Tetris 3D
  18. BW的登录错误解决实例
  19. 工具 | Plant UML介绍及使用
  20. mysql 中查看表结构的命令

热门文章

  1. redismanager 获取不到yml中的密码_恋爱物语APP:在城市的孤独中,获取真爱密码...
  2. java获取系统字体大小_Java自动调整到Windows 7的字体大小调整
  3. 4-vue的生命周期(钩子函数)
  4. 跨域将.net 工程嵌入别的系统页面中发生的js、ajax的拒绝访问的错误
  5. XMLHttpReq.onreadystatechange 传递参数
  6. HttpApplication 类
  7. 高斯—若尔当(约当)消元法解异或方程组+bitset优化模板
  8. 通过css使文字有渐变的效果
  9. mysql replication(主从复制)(二)MSS模式
  10. GEO hash 核心原理