![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
交互题
C202044zxy
这个作者很懒,什么都没留下…
展开
-
CF1282D Enchanted Artifact
一、题目 点此看题 二、解法 大概的步骤如下: 先得到这个字符串的长度,方法就是先问300300300个a,300−300-300−返回值就是a的个数,b也同理 然后再逐个修改,这里我们只用问n−1n-1n−1次,看把a修改成b是否会让返回值更小,最后一位不需要问就可以确定 还要一次询问用于输出答案 这道题卡了很久是对stringstringstring的不了解,一开始要通过+=...的方式来初始化(把它看作一个vectorvectorvector) #include <cstdio> #i原创 2020-07-16 14:46:20 · 167 阅读 · 0 评论 -
CF1363D Guess The Maximums
一、题目 点此看题 二、解法 题目主要在于理解:请求出max{a[j]},其中j不属于Si 我们可以先求出整个序列的最大值,对于不包含这个的集合答案都可以确定了,如果有集合包含这个最大值,再做一次询问就行了,求最大值可以二分。 还有细节,康康代码。 #include <cstdio> #include <vector> #include <iostream> using namespace std; const int M = 1005; int T,n,m,k,x,fl原创 2020-07-15 21:15:58 · 169 阅读 · 0 评论 -
CF835E The penguin's game
一、题目 点此看题 二、解法 这道交互题算板的了,由于x≠y≠0x\not=y\not=0x=y=0,处理起来就很轻松,由于有两个数为yyy,我们先找出两个数位置的差异,也就是两个数位置的异或值,这样我们就只用找出其中一个。我们可以枚举二进制位,把原序列在这一位上有值的拿来询问,如果询问结果是 x or x xor yx\space or\spa...原创 2020-02-13 10:45:47 · 750 阅读 · 0 评论 -
CF1019B The hat
一、题目 点此看题 谢谢恩泽的题面翻译,@Arextre 二、解法 首先nnn为222的倍数但不为444的倍数肯定是不行的,因为相对两个数隔了偶数个,所以奇偶性一定不同,所以两个数不同,可以在一开始的时候判掉。 设i′i'i′为iii的对应点,ti=ai−ai′t_i=a_i-a_{i'}ti=ai−ai′,有一个性质,就是ti+1−ti=±2 or 0t_{i+1}-...原创 2020-02-05 12:00:52 · 172 阅读 · 0 评论 -
CF1023E Down or Right
一、题目 点此看题 二、解法 考虑题目中的提示和条件:一共会有2n-2步,只能询问曼哈顿距离不大于n-1的点对 考虑把整个路径拆成两半,从(1,1)(1,1)(1,1)开始,优先向右,实在不行再向下(这个过程用询问做指导),从(n,n)(n,n)(n,n)开始,优先向上,实在不行再向左。这样能够保证都走的是最靠边的合法路径,最后一定会重合在某一个点,把两条路径拼起来即是答案。 第一次写交互题,贴个...原创 2020-02-01 10:59:12 · 202 阅读 · 0 评论 -
CF1103B Game with modulo
一、题目 点此看题 题目描述 猜一个数aaa,每次可以提一个问题(x,y)(x,y)(x,y),如果x≥ymod ax\geq y\mod ax≥ymoda 返回x,否则返回y,你最多询问606060次,然后必须回答出aaa是多少。 二、解法 一道神奇的交互题qwqqwqqwq 首先必须明确一个结论:若x≥ax\geq ax≥a,则 xmod a≤x/2x\mod a\leq x/2xmoda...原创 2020-02-02 15:54:34 · 179 阅读 · 0 评论