# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
559795 | A_D | Zagrade (COI20_zagrade) | C++14 | 808 ms | 1496 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define int long long
#define ii pair<int,int>
#define F first
#define S second
using namespace std;
const int N=1e5+100;
bool vis[N];
vector<int> vec;
void solve()
{
int n,q;
cin>>n>>q;
string s;
s.resize(n);
vec.push_back(0);
for(int i=1;i<n;i++){
if(vec.empty()){
vec.push_back(i);
continue;
}
cout<<"? "<<vec.back()+1<<" "<<i+1<<endl;
int x;
cin>>x;
if(x==1){
s[vec.back()]='(';
s[i]=')';
vec.pop_back();
}
else{
s[i]='(';
vec.push_back(i);
}
}
int sz=vec.size();
for(int i=0;i<sz/2;i++){
s[vec[i]]=')';
}
for(int i=sz/2;i<sz;i++){
s[vec[i]]='(';
}
cout<<"! "<<s<<endl;
}
main()
{
/*
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
//*/
int t=1;
// cin>>t;
while(t--){
solve();
}
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |