Submission #329581

#TimeUsernameProblemLanguageResultExecution timeMemory
329581GioChkhaidzeZagrade (COI20_zagrade)C++14
0 / 100
6 ms384 KiB
#include <bits/stdc++.h> using namespace std; const int N=1e5+5; char f[N]; int n,x,pr[N],nx[N]; main () { cin>>n; for (int i=0; i<=n+1; i++) nx[i]=i+1,pr[i]=i-1; int l=1,r=2,L,R,ans=n/2; while (l<=n && r<=n) { cout<<"? "<<l<<" "<<r<<endl; cin>>x; if (x) { --ans; f[l]='(',f[r]=')'; if (1<=pr[l]) { L=pr[l],R=nx[r]; nx[L]=R,pr[R]=L; l=L,r=R; } else { L=nx[r],R=nx[nx[r]]; pr[L]=pr[l]; l=L,r=R; } } else { L=r,R=nx[r]; l=L,r=R; } } for (int i=1; i<=n; i++) if (f[i]!='(' && f[i]!=')') { if (ans>0) f[i]=')',--ans; else f[i]='('; } cout<<"! "; for (int i=1; i<=n; i++) cout<<f[i]; cout<<endl; }

Compilation message (stderr)

zagrade.cpp:10:7: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   10 | main () {
      |       ^
zagrade.cpp: In function 'int main()':
zagrade.cpp:49:2: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   49 |  for (int i=1; i<=n; i++)
      |  ^~~
zagrade.cpp:51:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   51 |   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...