Submission #104075

#TimeUsernameProblemLanguageResultExecution timeMemory
104075ly20Cave (IOI13_cave)C++14
0 / 100
10 ms512 KiB
#include<bits/stdc++.h>
#include "cave.h"
//using namespace std;
void exploreCave(int N)
{
	int est[N],estp[N],num[N];
	for(int i=0;i<N;i++)
	{
		est[i]=0;
		num[i]=-1;
	}
	for(int at=0;at<N;at++)
	{
		int ini=0,fim=N-1;
		if(tryCombination(est)!=at)
		{
			for(int i=ini;i<=fim;i++)
			{
				if(num[i]==-1)est[i]=1-est[i];	
			}	
		}
		while(ini<fim)
		{
			int m=(ini+fim)/2;
			for(int i=m;i<=fim;i++)
			{
				if(num[i]==-1)est[i]=1-est[i];
			}
			if(tryCombination(est)!=at)
			{
				ini=m;
				for(int i=ini;i<=fim;i++)
				{
					if(num[i]==-1)est[i]=1-est[i];	
				}	
			}		
			else fim=m-1;
		}
		estp[fim]=est[fim];
		num[fim]=at;
	}	
	answer(estp,num);
}
#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...