Submission #25917

# Submission time Handle Problem Language Result Execution time Memory
25917 2017-06-25T06:15:22 Z 서규호(#1088) Carnival (CEOI14_carnival) C++14
0 / 100
0 ms 2024 KB
#include <bits/stdc++.h>

#define lld long long
#define pp pair<int,int>
#define pb push_back
#define MOD 1000000007
#define left lleft
#define right rright
#define INF 2000000000
#define Linf 1000000000000000000LL
#define next nnext
#define minus mminus

using namespace std;

int N;
int a[200];
bool check[200];

void query(int s,int e,int x){
	vector<int> tmp;
	for(int i=s; i<=e; i++) tmp.pb(i);
	tmp.pb(x);
	printf("%d ",tmp.size());
	for(auto &i : tmp) printf("%d ",i);
	puts("");
	fflush(stdout);
}

int get(int s,int e){
	int cnt = 0;
	for(int i=s; i<=e; i++){
		if(!check[a[i]]) cnt++;
		check[a[i]] = true;
	}
	for(int i=s; i<=e; i++){
		check[a[i]] = false;
	}
	return cnt;
}

void divide(int s,int e,int x){
	if(s == e){
		a[x] = a[s];
		return;
	}
	int mid = (s+e)/2;
	query(s,mid,x);
	int tmp;
	scanf("%d",&tmp);
	if(tmp == get(s,mid)) divide(s,mid,x);
	else divide(mid+1,e,x);
}

int main(){
	scanf("%d",&N);
	int color = 1;
	system("pause");
	a[1] = 1;
	for(int i=2; i<=N; i++){
		int tmp;
		query(1,i-1,i);
		scanf("%d",&tmp);
		if(tmp == get(1,i-1)+1){
			a[i] = ++color;
			continue;
		}
		divide(1,i-1,i);
	}
	printf("0 ");
	for(int i=1; i<=N; i++) printf("%d ",a[i]);
	return 0;
}

Compilation message

carnival.cpp: In function 'void query(int, int, int)':
carnival.cpp:24:25: warning: format '%d' expects argument of type 'int', but argument 2 has type 'std::vector<int>::size_type {aka long unsigned int}' [-Wformat=]
  printf("%d ",tmp.size());
                         ^
carnival.cpp: In function 'void divide(int, int, int)':
carnival.cpp:50:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&tmp);
                  ^
carnival.cpp: In function 'int main()':
carnival.cpp:56:16: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&N);
                ^
carnival.cpp:58:17: warning: ignoring return value of 'int system(const char*)', declared with attribute warn_unused_result [-Wunused-result]
  system("pause");
                 ^
carnival.cpp:63:19: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&tmp);
                   ^
# Verdict Execution time Memory Grader output
1 Runtime error 0 ms 2024 KB Execution killed because of forbidden syscall rt_sigaction (13)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 0 ms 2024 KB Execution killed because of forbidden syscall rt_sigaction (13)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 0 ms 2024 KB Execution killed because of forbidden syscall rt_sigaction (13)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 0 ms 2024 KB Execution killed because of forbidden syscall rt_sigaction (13)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 0 ms 2024 KB Execution killed because of forbidden syscall rt_sigaction (13)
2 Halted 0 ms 0 KB -