交互题还是很难搞呀~

C. Chocolate Bunny(交互,推导)

假设ai%aj=x假设a_i\%a_j=x假设ai​%aj​=x

aj%ai=ya_j\%a_i=yaj​%ai​=y

其实就能得到一些东西了

假设ai>aj假设a_i>a_j假设ai​>aj​

那么y=aj那么y=a_j那么y=aj​

那么x<aj那么x<a_j那么x<aj​

那么x<y且aj=y那么x<y且a_j=y那么x<y且aj​=y

所以,经过(i,j)得到x,经过(j,i)得到y所以,经过(i,j)得到x,经过(j,i)得到y所以,经过(i,j)得到x,经过(j,i)得到y

x和y的较大值就是ai和aj的较小值x和y的较大值就是a_i和a_j的较小值x和y的较大值就是ai​和aj​的较小值

比如y比较大,那么通过aj%ai=y比如y比较大,那么通过a_j\%a_i=y比如y比较大,那么通过aj​%ai​=y

所以唯一确定aj=y所以唯一确定a_j=y所以唯一确定aj​=y

综上所诉,2次操作可以求得两个数中的较小值综上所诉,2次操作可以求得两个数中的较小值综上所诉,2次操作可以求得两个数中的较小值

2n−2次操作得到n−1个数,剩下那个是n(因为n永远不会当作较小值求出来)2n-2次操作得到n-1个数,剩下那个是n(因为n永远不会当作较小值求出来)2n−2次操作得到n−1个数,剩下那个是n(因为n永远不会当作较小值求出来)

#include <bits/stdc++.h>
using namespace std;
int a[10009];
void print(int q,int w){cout << "? " << q << " " << w << '\n';
}
int main()
{int n;cin >> n;int last=1;for(int i=2;i<=n;i++){int q,w;print(last,i);fflush(stdout);cin >> q;print(i,last);fflush(stdout);cin >> w;if( q<w ) a[i]=w;    //较大值不改变 else   a[last]=q,last=i;}a[last]=n;cout << "! ";for(int i=1;i<=n;i++)cout << a[i] << " ";fflush(stdout);
}

1407C. Chocolate Bunny(交互,推导)相关推荐

  1. C. Chocolate Bunny(思维)

    题目传送门 Chocolate Bunny 题目大意 求一个长度为n的数组 每次可以输入两个值i和j询问,将会得到一个为pimodpjp_i\ mod\ p_jpi​ mod pj​返回值,最多可以进 ...

  2. CodeForces 1K-1600R-1407C Chocolate Bunny

    1407C-Chocolate Bunny Description Link Analysis 题目概述 交互题 给出一个 1→n1\to n1→n 的排列(1≤n≤1041\le n\le10^41 ...

  3. C. Chocolate Bunny

    https://codeforces.com/contest/1407/problem/C 交互题 对于i,j,如果ai%aj<aj%ai,则aj<ai.每次登都进行两个数的前后的相互询问 ...

  4. C. Chocolate Bunny(思维+规律)

    https://codeforces.com/contest/1407/problem/C 题意:交互题,每次最多询问i,j的pimodpj的值,问最后这个长度为n的排列是什么. 首先考虑到题目给的最 ...

  5. codeforces1407C Chocolate Bunny

    https://codeforces.com/contest/1407/problem/C 因为是1-n的排列,那么如果pi%pj<pj%pi,那么一定是pj=pj % pi,每次随便找两个没确 ...

  6. Codeforces Round #669 (Div. 2)

    那天晚上和同学打球打的有点晚,结果就鸽了,现在来补一下 A - Ahahahahahahahaha 直接看原数组中0的个数cnt0和1的个数cnt1,谁多留谁即可,注意留1的时候要留偶数个. #def ...

  7. 14行代码AC_Break the Chocolate HDU-4112(数学推导+解析)

    励志用少的代码做高效表达 Problem describe Benjamin is going to host a party for his big promotion coming up. Eve ...

  8. 聊天软交互原理_来自不同城市的人们如何在freeCodeCamp聊天室中进行交互

    聊天软交互原理 by Déborah Mesquita 由DéborahMesquita 来自不同城市的人们如何在freeCodeCamp聊天室中进行交互 (How people from diffe ...

  9. 《强化学习周刊》第28期:UNCC提出全新脑-机交互学习模式:内在互动强化学习...

    No.28 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

最新文章

  1. confluencejira集成_Jira Service Desk使用教程之如何将Jira Cloud与Confluence集成?
  2. Linux进阶之路————crond定时任务调度
  3. 【jupyter notebook】开启远程服务 遇到No address associated with hostname
  4. 神经网络如何进行深度估计?
  5. llvm安装方式_安装 LLVM 和 Clang
  6. C++之继承探究(十一):多重继承、菱形继承、虚继承、二义性问题及其解决方案
  7. 如何理解 RxJS?RxJS的中文API和使用教程
  8. java踩坑记-getResourceAsStream
  9. 深度学习图像分类(十二):MobileNet系列(V1,V1,V3)
  10. protel中单位换算!mil=?mm!走线的粗细
  11. 腾讯 AI Lab招聘算法实习生
  12. python中reduce什么意思_python中的reduce
  13. 金蝶服务器组件无法正常工作,K3组件kdsvrmgr无法正常工作
  14. ACSII,GB2312,GBK,GB18030,Unicode,UTF8,UTF16,UTF32,BOM区别与转换——字符编码最全总结
  15. 互联网晚报 | 05月31日 星期二 | 教育部将彻查教材插图问题;​6月1日上海有序恢复相关秩序;近半数职场人年终奖少于1个月...
  16. 信息检索经典文章-1
  17. AI笔记: 数学基础之向量组的线性表示与线性相关
  18. 四、点对点的传输层【网络全景图分析系列】
  19. Progress ThemeBuilder updated Crack
  20. 搞一下整车以太网技术 | A1 整车以太网技术概述

热门文章

  1. 攻防世界 Misc Miscellaneous-200
  2. 【Linux】文件类型
  3. Ubuntu18.04 仿mac美化
  4. Mac Terminal 美化
  5. css代码上一章 下一章,第一章、css和文档
  6. HDOJ 1000A + B Problem最短代码探索
  7. 中国知名食品品牌策划包装设计,哪家实力最强
  8. 小试DirectX游戏CPU优化
  9. mac 删除系统应用
  10. 简单的键盘按键记录(无码)/虚拟地址转物理地址/生成随机字符串/计算字符串哈希