제출 #1150964

#제출 시각아이디문제언어결과실행 시간메모리
1150964WH8Zagrade (COI20_zagrade)C++20
86 / 100
228 ms1648 KiB
#include <bits/stdc++.h>

using namespace std;
#define int long long 
#define f first
#define s second
#define pb push_back
#define ld long double
#define pll pair<int, int>

signed main(){
	int n, q;cin>>n>>q;
	vector<int> s;
	vector<char> res(n);
	
	for(int i=1;i<=n;i++){
		if(!s.empty()){
			printf("? %lld %lld\n", s.back(), i);
			fflush(stdout);
			
			int ans;
			cin>>ans;
			if(ans){
				res[s.back()]='(';
				res[i]=')';
				s.pop_back();
			}
			else{
				s.push_back(i);
			}
			
		}
		else{
			s.push_back(i);
		}
	}
	//~ assert(s.size()%2==0);
	for(int i=0;i<s.size();i++){
		if(i<s.size()/2){
			res[s[i]]=')';
		}
		else{
			res[s[i]]='(';
		}
	}
	cout<<"! ";

	for(int i=1;i<=n;i++){
		cout<<res[i];
	}
	cout<<endl;
	
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...