传送门

思路:

假设0到n-1之间的数为密码,则可以想到一个可行的解法:
第一次输出0,之后的每一次都输出(i−1)⊕(i−2)(i-1)⊕(i-2)(i−1)⊕(i−2)。
假设答案为x,那么第一次输出0,答案变为0⊕x;
第二次输出0⊕1,那么答案就变为0⊕x⊕0⊕1,即x⊕1;
第三次变为x⊕2

以上利用异或的性质,可以在n次询问中获得答案。

#include<bits/stdc++.h>
#include<ctime>
using namespace std;
#define ll long long
const int mod = 998244353;int main()
{int t;cin>>t;while(t--){int n,k;cin>>n>>k;for(int i = 0; i < n; i++){if(i == 0){cout<<i<<endl;}else{cout<<(i^(i-1))<<endl;}fflush(stdout) or cout.flush();int flag = 0;scanf("%d",&flag);if(flag)break;}}
}

Codeforces Round #730 (Div. 2) D1. RPD and Rap Sheet (Easy Version)相关推荐

  1. Codeforces Round #730 (Div. 2) D2. RPD and Rap Sheet (Hard Version) 交互 + k进制的转换

    传送门 文章目录 题意: 思路: 题意: 定义a⊕kba\oplus_k ba⊕k​b为a,ba,ba,b在kkk进制下的不进位加法.系统会随机生成一个数xxx,你猜这个数,假设当前猜的数为yyy,如 ...

  2. Codeforces Round #730 (Div. 2) D. RPD and Rap Sheet (交互,从easy到hard)

    easy hard 题意 已知密码是kkk进制数,在十进制下是[0,n−1][0,n-1][0,n−1]之间,你有至多nnn次机会猜测这个数 设你猜的数字是yyy,如果答案正确,系统会返回111 如果 ...

  3. CodeForces Round #730 D1. RPD and Rap Sheet (Easy Version)题解

    Codeforces Round #730 (Div. 2) 题意: t组数据,每组给一个n和k,(easy version里面k=2) 每一次系统会输入一个初始的密码(初始密码是一个在[0,n−1] ...

  4. D1. RPD and Rap Sheet (Easy Version) (交互题+构造)

    题意: 交互题,有一个初始密码xxx,只有nnn次猜测机会,假如猜了yyy,x!=yx!=yx!=y,那么密码就会变成x⨁yx\bigoplus yx⨁y. 题解: 设第iii次猜测的数为pip_ip ...

  5. CodeForces - 1543D1 RPD and Rap Sheet (Easy Version)(异或+交互)

    题目链接:点击查看 题目大意:交互题猜密码,设原密码为 xxx,猜的密码为 yyy,如果没猜到,密码会自适应变成 zzz,满足 x⊕z=yx \oplus z=yx⊕z=y ,最多猜 nnn 次 题目 ...

  6. CodeForces - 1543D2 RPD and Rap Sheet (Hard Version)(交互+模拟)

    题目链接:点击查看 题目大意:交互题猜密码,设原密码为 xxx,猜的密码为 yyy,如果没猜到,密码会自适应变成 zzz,满足 x⊕z=yx \oplus z=yx⊕z=y ,最多猜 nnn 次,对于 ...

  7. Codeforces Round #741 (Div. 2) D2. Two Hundred Twenty One (hard version) 前缀和 + 分段模型

    传送门 文章目录 题意: 思路: 题意: 给你一个长度为nnn的串,+++代表111,−-−代表−1-1−1,让后有qqq个询问,每次询问[l,r][l,r][l,r]区间,将这段区间的数拿出来,设为 ...

  8. Codeforces Round #601 (Div. 2) E2. Send Boxes to Alice (Hard Version) 思维 + 质因子

    传送门 文章目录 题意: 思路: 题意: 大体题意跟easyeasyeasy版本差不多,就是hardhardhard版本的aaa范围更大.见这里Codeforces Round #601 (Div. ...

  9. Codeforces Round #700 (Div. 2) D1 D2. Painting the Array 思维

    link 题意: 给一个数组,让你从头开始选出一些数放在AAA数组中,剩下的放在BBB数组中,且是有序选择,让后把两个数组中相邻且相等的元素合并. D1: 使合并后Len(A)+Len(B)Len(A ...

最新文章

  1. python不需要定义函数后使用_python自定义函数可以向前引用不用声明
  2. Mac连接路由器后没有反应_无线WiFi无法连接到网络怎么办【解决方法】
  3. 学计算机的误解,让人误解的六大专业
  4. mysql迁移、备份数据表,导出表数据与结构
  5. 计算机操作系统教程讲解视频,计算机操作系统(54集)全套教学视频
  6. 应用内评分_评分者信度
  7. 前端CSS - 相对定位,绝对定位,固定定位
  8. bnu 29064, 期望 水题
  9. 基于DL的目标检测技术:R-CNN、Fast R-CNN、Faster R-CNN
  10. 用脚本运行Modelsim教程
  11. grub2启动出错(Error11:Unrecognized device string)
  12. 神奇的识别图片文字代码
  13. windows server 2008 r2 设置显示文件后缀名
  14. python生成验证码的程序_用python生成验证码图片
  15. ChatGPT辅助处理excel表格数据
  16. filter和find的区别
  17. Python学习(六)——格式化输出
  18. 某航空公司客户价值分析
  19. 北京SAP-AGS CoE support consultant intern 面试总结
  20. jsj中对象之间的赋值

热门文章

  1. 《Kubernetes零基础快速入门》简介
  2. 产品与运营之冷启动期间种子用户运营
  3. 电脑自动使用代理服务器导致无法上网
  4. Revit中交叉剪刀一样的楼梯怎么画的?门窗生成操作
  5. 本地开发环境搭建(windows)
  6. 橡胶密封件的设计注意事项
  7. 【行研报告】B2C跨境电商平台“出海”研究报告—附下载链接
  8. 关于在线使用remix-ide
  9. 采集招标网所有招标数据
  10. golang测试框架 GoConvey使用总结