First interactive question, record it.
#include <cstdio>#include<iostream>#include<ctime>#include<vector>#include<cmath>#include<map>#include<queue>#include<algorithm>#include<cstring>using namespaceStd;typedefLong LongLL;Const intn=1e3+5;Const intinf=0x3f3f3f3f;Const intmod=1e9+7;intprime[ -];BOOLvis[ -];Chars[5];intMain () { for(intI=2; i<= -;++i)if(!Vis[i]) for(intj=i*i;j<= -; j+=i) vis[j]=1; intCnt=0; for(intI=2; i<= -;++i)if(!vis[i]) prime[++cnt]=i; intret=0, X; for(intI=2; i<=cnt;++i) {printf ("%d\n", Prime[i]); Fflush (stdout); scanf ("%s", s); if(s[0]=='y') ++ret,x=Prime[i]; } if(ret>=2) {printf ("composite\n"); Fflush (stdout); } Else if(ret==1) {printf ("2\n"); Fflush (stdout); scanf ("%s", s); if(s[0]=='y') {printf ("composite\n"); Fflush (stdout); } BOOLflag=0; for(inti=x*x;i<= -; i*=x) {printf ("%d\n", i); Fflush (stdout); scanf ("%s", s); if(s[0]=='y') {flag=1; Break; } } if(flag) printf ("composite\n"); Elseprintf"prime\n"); Fflush (stdout); } Else{ intx=-1; for(intI=2; i<= -; i*=2) {printf ("%d\n", i); Fflush (stdout); scanf ("%s", s); if(s[0]=='y') {x=i; } } if(x==-1|| x==2) printf ("prime\n"); Elseprintf"composite\n"); Fflush (stdout); } return 0;}
View Code
Codeforces 679A Bear and Prime 100 Interactive