Submission #1152555

#TimeUsernameProblemLanguageResultExecution timeMemory
1152555dzuizzZagrade (COI20_zagrade)C++20
0 / 100
222 ms1336 KiB
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
	int n,q; cin>>n>>q;
	char s[n]; fill(s,s+n,'?');
	stack<int> st; st.emplace(0);
	int cnt=n;
	
	for(int i=1;i<n;++i){
		if(st.size()){
			int j=st.top();
			cout<<"? "<<j+1<<" "<<i+1<<endl;
			int x; cin>>x;
			if(x){
				s[j]='(',s[i]=')';
				cnt -= 2;
				st.pop();
			}else{
				st.emplace(i);
			}
		}else{
			st.emplace(i);
		}
	}
	cnt/=2;
	for(int i=0;i<n;++i) if(s[i]=='?')
		s[i]=(cnt-->0?')':'(');
	cout<<"! "<<s<<'\n';
	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...