Submission #29898

# Submission time Handle Problem Language Result Execution time Memory
29898 2017-07-21T10:13:49 Z dereotu Cave (IOI13_cave) C++14
13 / 100
149 ms 640 KB
#include "cave.h"
#include <bits/stdc++.h>
#define pii pair<int,int>
#define mp make_pair
#define pb push_back
#define st first
#define nd second
#define forr(i,A,B) for(int i=A;i<B;++i)
#define space ' '
#define endl '\n'
#define LL long long
using namespace std;

void exploreCave(int N) {
    int a[N]={0},ans[N],done[N];
    int b[N];
    forr(i,0,N) b[i]=1;
    memset(ans,-1,sizeof ans);
    memset(done,-1,sizeof done);
    int last=tryCombination(a);
    if(last==-1){
    	forr(i,0,N){
    		a[i]=1;
    		int res=tryCombination(a);
    		ans[i]=res;
    		a[i]=0;
    	}
    }
    else{
	    forr(j,0,N){
		    forr(i,0,N){
		    	if(done[i]!=-1) continue;
		    	a[i]=1;
		    	int res=tryCombination(a);
		    	if(res==-1){
		    		a[i]=0;
		    		int wtf=tryCombination(a);
		    		ans[i]=wtf;
		    		a[i]=1;
		    		done[i]=1;
		    		continue;
		    	}
		    	if(res!=last){
		    		if(last>res){
		    			a[i]=0;
		    			ans[i]=res;
		    			done[i]=1;
		    		}
		    		else{ 
		    			ans[i]=last;
		    			a[i]=1;
		    			done[i]=1;
		    			last=res;
		    		}
		    	}
		    	else{
		    		a[i]=0;
		    	}
		    }	
	    }
	    int f=0;
	    forr(i,0,N){
	    	if(ans[i]==-1 or done[i]==-1){
	    		f=1;
	    		break;
	    	}
	    }
	    if(!f){
	    	answer(a,ans);
	    }
	    memset(done,-1,sizeof done);
	    memset(ans,-1,sizeof ans);
	    forr(j,0,N){
		    forr(i,0,N){
		    	if(done[i]!=-1) continue;
		    	b[i]=0;
		    	int res=tryCombination(b);
		    	if(res==-1){
		    		b[i]=1;
		    		int wtf=tryCombination(b);
		    		ans[i]=wtf;
		    		b[i]=0;
		    		done[i]=1;
		    		continue;
		    	}
		    	if(res!=last){
		    		if(last>res){
		    			b[i]=1;
		    			ans[i]=res;
		    			done[i]=1;
		    		}
		    		else{ 
		    			ans[i]=last;
		    			b[i]=0;
		    			done[i]=1;
		    			last=res;
		    		}
		    	}
		    	else{
		    		b[i]=1;
		    	}
		    }	
	    }
	    answer(b,ans);
	}
    answer(a,ans);

}
# Verdict Execution time Memory Grader output
1 Incorrect 149 ms 512 KB Answer is wrong
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 20 ms 532 KB Output is correct
2 Correct 5 ms 512 KB Output is correct
3 Correct 18 ms 512 KB Output is correct
4 Correct 6 ms 512 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 16 ms 512 KB Output is correct
7 Correct 16 ms 640 KB Output is correct
8 Correct 21 ms 512 KB Output is correct
9 Correct 24 ms 512 KB Output is correct
10 Correct 21 ms 512 KB Output is correct
11 Correct 17 ms 640 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 512 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 332 KB Output is correct
4 Correct 5 ms 512 KB Output is correct
5 Incorrect 5 ms 384 KB Answer is wrong
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 6 ms 512 KB Output is correct
2 Correct 5 ms 384 KB Output is correct
3 Correct 5 ms 332 KB Output is correct
4 Correct 5 ms 512 KB Output is correct
5 Incorrect 5 ms 384 KB Answer is wrong
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 149 ms 512 KB Answer is wrong
2 Halted 0 ms 0 KB -