#include #include #include int n; void keres(int al,int fel,int meny) { char s[100]={'0'}; int x,k=meny; if(meny==1) { x=al; while(s[0]!='b') { printf("query %d\n",x); fflush(stdout); gets(s); x++; } printf("answer %d\n",x-1); fflush(stdout); gets(s); return(0); } else if(meny>(fel-al)/2) { x=(fel-al)/2; while(s[0]!='e') { printf("query %d\n",x); fflush(stdout); gets(s); if(s[0]=='b') { k--; fel=x; if(k==1) { keres(al,fel,1); return(0); } } else if(s[0]=='s') { al=x+1; } else if(s[0]=='e') return(0); if(al==fel) { printf("answer %d\n",fel); fflush(stdout); gets(s); } x=(fel+al)/2; } } else { int i=1,lep=meny; while(s[0]!='b') { x=lep*i; if(x>n)x=n; printf("query %d\n",x); fflush(stdout); gets(s); if(s[0]=='b') al=x-lep+1; i++; } fel=x; keres(al,fel,meny-1); return(0); } return(0); } int main() { int k; char s1[100]={'0'}; scanf("%d%d",&n,&k); gets(s1); keres(1,n,k); return(0); }