Submission #705998

#TimeUsernameProblemLanguageResultExecution timeMemory
705998NonozeCave (IOI13_cave)C++14
0 / 100
627 ms408 KiB
#include "cave.h"
#include <bits/stdc++.h>

void exploreCave(int N) {
	int S[N], D[N];
	for (int i = 0; i < N; ++i)
	{
		S[i]=0, D[i]=0;
	}
	for (int i = 0; i < N; ++i)
	{
		int *s_new=S;
		int remplacer=1;
		if (tryCombination(S)>i)
		{
			for (int j = 0; j < N; ++j)
			{
				if (D[j]==-1)
				{
					s_new[i]=1;
				}
			}
			remplacer=0;
		}
		int l=0, r=N;
		while(l<r) {
			int mid=(l+r)/2;
			for (int j = 0; j < mid; ++j)
			{
				if (D[j]==-1)
				{
					s_new[i]=remplacer;
				}
			}
			if (tryCombination(s_new)>i) {
				r=mid+1;
			}
			else {
				l=mid;
			}
			s_new=S;
		}
		S[l]=remplacer;
		S[l]=i;
	}
	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...