Submission #1177519

#TimeUsernameProblemLanguageResultExecution timeMemory
1177519sleepntsheepZagrade (COI20_zagrade)C11
100 / 100
233 ms892 KiB
#include<stdio.h>

int n,sta[111111],top,q;
char s[111111];

int main(){
	scanf("%d%d",&n,&q);
	for(int i=1;i<=n;++i){
		sta[++top]=i;
		if(top>=2){
			int x;
			printf("? %d %d\n",sta[top-1],sta[top]);
			fflush(stdout);
			scanf("%d",&x);
			if(x){
				s[sta[top-1]]='(';
				s[sta[top]]=')';
				top-=2;
			}
		}
	}
	if(top){
		for(int j=1;j<=top;++j)
			s[sta[j]]=j*2<=top?')':'(';
	}

	printf("! %s\n",s+1);
	fflush(stdout);

	return 0;
}

Compilation message (stderr)

zagrade.c: In function 'main':
zagrade.c:7:9: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 |         scanf("%d%d",&n,&q);
      |         ^~~~~~~~~~~~~~~~~~~
zagrade.c:14:25: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |                         scanf("%d",&x);
      |                         ^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...