Submission #164368

#TimeUsernameProblemLanguageResultExecution timeMemory
164368cfalasCave (IOI13_cave)C++14
0 / 100
2097 ms39988 KiB
#include<bits/stdc++.h>
using namespace std;
#include "cave.h"
#define pr(x) cout<<#x<<" "<<x<<endl;


void exploreCave(int n) {
	int used[n]={}, correct[n] = {};
	int aa[n];
	for(int i=0;i<n;i++){
		// Find correct position of switch
		int curr[n];
		for(int j=0;j<n;j++){
			if(used[j]) curr[j] = correct[j];
			else curr[j] = 1;
			cout<<curr[j]<<" ";
		}
		cout<<endl;
		int ans = tryCombination(curr);
		int correctVal = 1;
		cout<<ans<<endl;
		if(ans<=i && ans!=-1) correctVal = 0;
		
		pr(correctVal);

		// Find switch needed
		for(int s=0;s<n;s++){
			if(used[s]) continue;
			cout<<s<<": ";
			for(int j=0;j<n;j++){
				if(used[j]) curr[j] = correct[j];
				else if(j==s) curr[j] = correctVal;
				else curr[j] = 1 - correctVal;
				cout<<curr[j]<<" ";
			}
			cout<<endl;
			ans = tryCombination(curr);
			if(ans>i || ans==-1){
				used[s] = true;
				correct[s] = correctVal;
				aa[s] = i;
				pr(s);
				cout<<"----------------\n";
				break;
			}
		}
	}
		answer(correct, aa);
}
#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...