Submission #1152496

#TimeUsernameProblemLanguageResultExecution timeMemory
1152496zhehanZagrade (COI20_zagrade)C++20
0 / 100
0 ms416 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> ii; int main(){ int n, q, check; string ans; vector<int> paired; cin>>n>>q; int ptr=1; int counter=0; while(ptr<n+1){ if(ptr==n){ ptr++; continue; } cout<<"? "<<ptr<<' '<<ptr+1<<endl; cin>>check; if(check==0){ ans+='('; ++ptr; }else{ ans+="()"; int pos=ptr+1; int c=1; int pc=1; while(check==1){ cout<<"? "<<ptr-c<<' '<<pos+c<<endl; cin>>check; c++; if(!paired.empty()&&pc<=paired.size()&&ptr-c==paired[paired.size()-pc]){ c+=2; pc++; } if(ptr-c<1){ break; } } c-=2; for(int i=0;i<c-(pc-1)*2;++i){ ans+=')'; } paired.push_back(ptr+1); ptr+=c+2; } } while(ans.length()<n){ ans+=')'; } cout<<"! "<<ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...