Submission #1353809

#TimeUsernameProblemLanguageResultExecution timeMemory
1353809FaresSTHCave (IOI13_cave)C++20
12 / 100
93 ms504 KiB
#include"bits/stdc++.h"
#include"cave.h"
using namespace std;
using ll=long long;
#define S second
#define F first
int s[5000],d[5000];
bool v[5000];
int qry(){
	return tryCombination(s);
}
void exploreCave(int n){
	for(int i=0;i<n;i++){
		int x=qry(),l=0,r=n-1;
		while(l<r){
			int m=(l+r-1)/2;
			for(int j=l;j<=m;j++){
				if(!v[j])s[j]=1;
			}
			if((i==x&&i!=qry())||(i!=x&&i==qry()))r=m;
			else l=m+1;
			for(int j=l;j<=m;j++){
				if(!v[j])s[j]=0;
			}
		}
		if(x==i)s[r]=1;
		d[r]=i,v[r]=1;
	}
	answer(s,d);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...