1. 程式人生 > >Codeforces A - Bear and Prime 100(交互題)

Codeforces A - Bear and Prime 100(交互題)

mes 思路 logs cin out else 一個 如果能 pos

A - Bear and Prime 100

思路:任何一個合數都可以寫成2個以上質數的乘積。在2-100中,除了4,9,25,49外都可以寫成兩個以上不同質數的乘積。

所以打一個質數加這四個數的表:{2,3,4,5,7,9,11,13,17,19,23,25,29,31,37,41,43,47,49},詢問19次,如果能被整出兩次以上,說明是合數,否則是質數。

#include<bits/stdc++.h>
using namespace std;
#define ll long long 
#define pb push_back
int a[19]={2,3,4,5,7,9,11
,13,17,19,23,25,29,31,37,41,43,47,49}; int main() { int i=0,k=0; string s; while(i<19) { cout<<a[i++]<<endl; cin>>s; if(s=="yes")k++; } if(k>=2)cout<<"composite"<<endl; else cout<<"prime"<<endl; return
0; }

Codeforces A - Bear and Prime 100(交互題)