이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
#define all(s) s.begin(),s.end()
using namespace std;
typedef int ll;
ll n,q,a[100009],x,p[100009],id=2,o;
bool b;
ll gp(ll z)
{
if(p[z]==z)
return z;
return p[z]=gp(p[z]);
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>n>>q;
x=n>>1;
for(ll i=1; i<=n; i++)
p[i]=i;
while(id<=n)
{
o=gp(id-1);
if(o==0)
{
id++;
continue;
}
cout<<"? "<<o<<" "<<id<<endl;
cin>>b;
if(b)
{
x--;
a[id]=-1;
a[o]=1;
p[id]=p[o]=o-1;
}
id++;
}
cout<<"! ";
for(ll i=1; i<=n; i++)
{
if(a[i]==1)
cout<<"(";
else if(a[i]==-1)
cout<<")";
else if(x)
{
x--;
cout<<")";
}
else
cout<<"(";
}
return 0;
}
# | 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... |