답안 #225301

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
225301 2020-04-20T08:29:03 Z kshitij_sodani 도서관 (JOI18_library) C++17
0 / 100
692 ms 540 KB
#include <iostream>
#include <bits/stdc++.h>
#include "library.h"
using namespace std;

#define pb push_back
typedef long long llo;
#define a first
#define b second
int n;
vector<int> aa;
vector<int> bb;
/*
void Answer(vector<int> cc){
	for(auto j:cc){
		cout<<j<<" ";
	}
	cout<<endl;
}
int Query(vector<int> cc){
	for(auto j:cc){
		cout<<j<<" ";
	}
	cout<<endl;
	int xx;
	cin>>xx;
	return xx;
}*/
int ll;
void solve(int ind,int l,int r){
	//cout<<l<<" "<<r<<endl;
	if(l==r){
		if(ind==l){
			ll=-1;
			/*while(true){
				continue;
			}*/
		}
		else{
			for(int i=0;i<n;i++){
				if((ind==i or i==l)){

					bb[i]=1;
				}
				else{
					bb[i]=0;
				}
			}
			int yy=Query(bb);
			if(yy==1){
				ll=l;
			}
			else{
				ll=-1;

			}
		}
	}
	else{
		int mid=(l+r)/2;
		int co=0;
		for(int i=0;i<n;i++){
			bb[i]=0;
		}
		for(int i=l;i<=mid;i++){
			if(aa[i]==2){
				bb[i]=1;
				co+=1;
			}
		}
		if(co==0){

			solve(ind,mid+1,r);

		}
		else{
			bb[ind]=1;
			int yy=Query(bb);
			bb[ind]=0;
			int zz=Query(bb);
			if(yy==zz){
				solve(ind,l,mid);
			}
			else{
				solve(ind,mid+1,r);
			}
		}

	}
}
void Solve(int nn){
	n=nn;
	for(int i=0;i<n;i++){
		aa.pb(2);
		bb.pb(0);
	}
	int x=0;
	deque<int> ans;
	ans.push_back(0);
	int st=0;
	int kk=0;
	int le=n-1;
	aa[0]=0;
	int cco=0;

	while(le and cco<2*n){
		cco+=1;
		int y=x;
		ll=-2;

		solve(x,0,n-1);
		/*if(co==2){
			int pp=1/0;
		}*/
	/*	if(ll==x){
			while(true){
				continue;
			}
		}*/

		if(ll!=-1){
			le-=1;
			if(aa[ll]==0){
				while(true){
					continue;
				}
			}
		}
		x=ll;

		if(x==-1){
			x=0;
			st=1;
			kk+=1;
		}
		else{
			if(st==0){
				ans.push_back(x);
			}
			else{
				ans.push_front(x);
			}
		}
		aa[x]=0;
	}
	vector<int> fin;
	for(int i=0;i<n;i++){
		int x=ans.front();
		ans.pop_front();
		fin.pb(x+1);
	}
	Answer(fin);
}
/*int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	Solve(1);


	return 0;
}*/

Compilation message

library.cpp: In function 'void Solve(int)':
library.cpp:108:7: warning: unused variable 'y' [-Wunused-variable]
   int y=x;
       ^
# 결과 실행 시간 메모리 Grader output
1 Correct 49 ms 256 KB # of queries: 2940
2 Correct 54 ms 256 KB # of queries: 2901
3 Correct 54 ms 384 KB # of queries: 3084
4 Correct 51 ms 256 KB # of queries: 3038
5 Correct 37 ms 256 KB # of queries: 3062
6 Correct 53 ms 256 KB # of queries: 3074
7 Correct 53 ms 256 KB # of queries: 3026
8 Correct 52 ms 384 KB # of queries: 2937
9 Correct 48 ms 384 KB # of queries: 3079
10 Incorrect 60 ms 384 KB Wrong Answer [5]
11 Correct 4 ms 256 KB # of queries: 0
12 Correct 5 ms 384 KB # of queries: 1
13 Correct 4 ms 384 KB # of queries: 5
14 Correct 4 ms 256 KB # of queries: 9
15 Correct 6 ms 256 KB # of queries: 104
16 Correct 7 ms 256 KB # of queries: 253
# 결과 실행 시간 메모리 Grader output
1 Correct 49 ms 256 KB # of queries: 2940
2 Correct 54 ms 256 KB # of queries: 2901
3 Correct 54 ms 384 KB # of queries: 3084
4 Correct 51 ms 256 KB # of queries: 3038
5 Correct 37 ms 256 KB # of queries: 3062
6 Correct 53 ms 256 KB # of queries: 3074
7 Correct 53 ms 256 KB # of queries: 3026
8 Correct 52 ms 384 KB # of queries: 2937
9 Correct 48 ms 384 KB # of queries: 3079
10 Incorrect 60 ms 384 KB Wrong Answer [5]
11 Correct 4 ms 256 KB # of queries: 0
12 Correct 5 ms 384 KB # of queries: 1
13 Correct 4 ms 384 KB # of queries: 5
14 Correct 4 ms 256 KB # of queries: 9
15 Correct 6 ms 256 KB # of queries: 104
16 Correct 7 ms 256 KB # of queries: 253
17 Runtime error 692 ms 372 KB Execution killed with signal 11 (could be triggered by violating memory limits)
18 Correct 492 ms 376 KB # of queries: 19485
19 Correct 462 ms 504 KB # of queries: 19764
20 Correct 453 ms 376 KB # of queries: 18574
21 Runtime error 589 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
22 Runtime error 685 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
23 Correct 497 ms 376 KB # of queries: 19749
24 Runtime error 348 ms 540 KB Execution killed with signal 11 (could be triggered by violating memory limits)
25 Runtime error 665 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
26 Runtime error 626 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
27 Correct 169 ms 384 KB # of queries: 9065
28 Correct 288 ms 484 KB # of queries: 11067
29 Correct 271 ms 376 KB # of queries: 11060
30 Correct 282 ms 504 KB # of queries: 11067