input:

yes
no
yes

output:

2
80
5
composite

input:

no
yes
no
no
no

output:

58
59
78
78
2
prime

题目大意:系统会生成一个2~100之间的数y,每次可以由我们给出一个询问,每个询问包含一个数字x,若该数字x为y的因子,则输出yes,否则输出no,我们最多询问20次,最后我们要根据系统的回答来判断y是否为质数,如果是则输出prime,否则输出composite。

解题思路:因为数字y的取值范围为2~100,若y不是素数,那么根据算数基本定理对其进行分解,其包含的质因子范围一定都在2~50之间,所以我们只要筛选出2~50之间的质数,发现总共为15个,然后从小到大每次询问一个质数,统计回答yes的数量,如果数量大于等于2,那么生成的数字一定不是质数,然后对于剩下的情况,当回答yes的数量为1时,记录下此时能整除的质数now,要判断生成的数字是否是某个质数的幂次方,所以我们要再次进行询问now*now是否整除y,如果回答yes,那么就不是质数,否则是质数,如果yes的数量为0,那么生成的数字一定是质数。

上代码:

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
int cnt;
//int prime[] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47};
bool is_prime(int x) {int num=0;for(int i=2; i<x; i++)if(x%i==0)num++;if(num==0)return true;elsereturn false;
}
int prime[50];
bool query(int x)
{cout << x << endl;string s;cin >> s;return s == "yes";
}
int main() {for(int i=2; i<=50; i++) {if(is_prime(i))prime[++cnt]=i;}int num=0;int now=-1;for(int i=1; i<=cnt; i++) {cout<<prime[i]<<endl;string str;cin>>str;if(str=="yes") {num++;now=prime[i];}}if(num>=2)cout<<"composite"<<endl;else {if(now>10||now==-1)cout<<"prime"<<endl;else {cout<<now*now<<endl;string str;cin>>str;if(str=="yes")cout<<"composite"<<endl;elsecout<<"prime"<<endl;}}return 0;
}

CF679A.Bear and Prime 100 (交互题)相关推荐

  1. codeforces 679A Bear and Prime 100 交互

    第一次交互题,记录一下吧 #include <cstdio> #include <iostream> #include <ctime> #include <v ...

  2. Codeforces A - Bear and Prime 100(交互题)

    A - Bear and Prime 100 思路:任何一个合数都可以写成2个以上质数的乘积.在2-100中,除了4,9,25,49外都可以写成两个以上不同质数的乘积. 所以打一个质数加这四个数的表: ...

  3. RPD and Rap Sheet (Hard Version)(交互题,不进位加法、不退位减法)

    传送门 题目: 定义 a⊕kba \oplus_k ba⊕k​b表示整数 aaa 与 bbb的在 kkk进制下的不进位加法.特别的,当 k=2k = 2k=2 时,这一操作可以称为位运算的异或. 给定 ...

  4. Codeforces Round #504 E - Down or Right 交互题

    1023E 题意: 交互题.在一个有障碍地图中,问如何走才能从(1,1)走到(n,n),只能向右或者向左走.每次询问两个点,回复你这两个点能不能走通. 思路: 只用最多2*n-2次询问.从(1,1), ...

  5. Strange Shuffle CodeForces - 1471E(交互题)

    交互题 这类型不同于普通的题. 可以理解为有个问题需要你解决,你通过输入某些东西表示你要问系统的问题,这时系统会回答你的问题.在代码中的回答方式就是会输入某个东西就是系统给你的答案,通过这些信息你可以 ...

  6. Codeforces1486 C1.Guessing the Greatest (easy version)(交互题+二分)

    原题链接 题意: 交互题,首先电脑给出序列的长度n.你可以询问区间[l,r]的次大值位置,求序列最大值的位置. 思路: 首先考虑最简单的情况,当区间长度为2时,那么假设区间为[l,r].当询问的次大值 ...

  7. Codeforces ~ 1063C ~ Dwarves, Hats and Extrasensory Abilities (交互题,二分)

    题意 交互题.N次,让你每次输出一个点的坐标,然后他告诉你当前点的颜色(黑或白).使得可以找到一条直线把黑点和白点分隔开.最终输出这条直线过的两个点.输入输出均为正数,分为为0~1e9 思路 我们把所 ...

  8. 【交互题+二分】Codeforces Round #516 E. Dwarves, Hats and Extrasensory Abilities

    Codeforces Round #516 E. Dwarves, Hats and Extrasensory Abilities 题意: 输出一个点,输入是黑色或者白色,n次询问后,输出一条直线,是 ...

  9. 计算机二级C语言100套题

    计算机二级C语言100套题 二级C语言的题库 链接:https://pan.baidu.com/s/1VMPfYnhnbNGIlCe3kacJmA 提取码:82m8

  10. Codeforces Round #503 (by SIS, Div. 2) D. The hat(交互题)

    题目链接:http://codeforces.com/contest/1020/problem/D 题意描述: 这是一个交互题,互交题就是你要输出一些问题,评测机就会回答你一些问题 你要在规定的提问次 ...

最新文章

  1. python unsupported operand type(s) for /: 'str' and 'str' can only concatenate str (not int) to s
  2. android 加载器loader详解
  3. 详解浏览器解析一个URL的全过程
  4. 深度学习笔记 第四门课 卷积神经网络 第二周 深度卷积网络:实例探究
  5. 关于n对角矩阵数据结构_机器学习与线性代数 - 特殊矩阵
  6. 拉格朗日插值函数计算机实现流程图,拉格朗日插值实验报告.doc
  7. iOS如何退出测试软件,如何继续测试iOS应用程序,使用UIAutomation仪器,甚至应用程序退出后?(How to c...
  8. adam算法效果差原因_信电学院本科生提出AI新算法:速度比肩Adam,性能媲美SGD,ICLR领域主席赞不绝口...
  9. matlab 流星雨,dijkstra算法及其matlab实现
  10. 机器学习sklearn(13)层次聚类
  11. java支持xls格式的excel导入和导出
  12. Emulex/QLogic万兆争夺继续 存储还是板载优先?
  13. 计算机导论结业报告大一,河北工业大学计算机导论结业论文
  14. 如何将小程序代码上传到腾讯云服务器
  15. 什么是OA系统?OA系统的协同门户平台有哪些特点?
  16. 破解rar、zip、7z压缩包加密
  17. Battery Historian
  18. JAVA使用JCO实现调用SAP接口方法
  19. SVN使用(windows)
  20. DELL R440服务器安装Centos8.0

热门文章

  1. Codeforces Round #822 (Div. 2) C Removing Smallest Multiples(复杂度为调和级数级别的暴力)
  2. 学习python的第二周 第一天
  3. 微信公众号如何上传html5,微信平台公众号怎么上传视频? 视频支持哪些格式
  4. 分享个PS快速替换背景颜色的方法
  5. THUPC 2019 CTS 2019 打铁记
  6. li 字多出了省略号_css实现DIV,LI等元素超出部分文字用省略号…显示
  7. Java女生后来_那些主动的女生后来怎么样了?
  8. 【论文笔记】Enhancing Adversarial Example Transferability with an Intermediate Level Attack
  9. 20190604第二次月考
  10. Google抢Waze:除了地图还有什么?