제출 #1003823

#제출 시각아이디문제언어결과실행 시간메모리
1003823vjudge1Zagrade (COI20_zagrade)C++17
0 / 100
468 ms708 KiB
#include<bits/stdc++.h>
using namespace std;

int main(){
	ios_base::sync_with_stdio(0); cin.tie(0);
	int ptr1=1, ptr2;
	int q;
	string ini="", fim="";
	cin >> ptr2 >> q;
	while(ptr1<ptr2){
		if(ptr1+1==ptr2){
			cout << "? " << ptr1 << ' ' << ptr2 << endl;
			int resp;
			cin >> resp;
			if(resp==1){
				ini.push_back('(');
				ini.push_back(')');
			}
			else{
				ini.push_back(')');
				ini.push_back('(');
			}
			break;
		}
		cout << "? " << ptr1 << ' ' << ptr1+1 << endl;
		int r1;
		cin >> r1;
		cout << "? " << ptr2-1 << ' ' << ptr2 << endl;
		int r2;
		cin >> r2;

		if(r1 && r2){
			ptr1+=2;
			ptr2-=2;
			ini.push_back('(');
			ini.push_back(')');
			fim.push_back(')');
			fim.push_back('(');
		}
		else if(r1){
			ptr1+=2;
			ini.push_back('(');
			ini.push_back(')');
		}
		else if(r2){
			ptr2-=2;
			fim.push_back(')');
			fim.push_back('(');
		}
		else{
			ini.push_back('(');
			fim.push_back(')');
			ptr1++;
			ptr2--;
		}
	}
	reverse(fim.begin(), fim.end());
	cout << "! ";
	cout << ini << fim << 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...