Submission #1147504

#TimeUsernameProblemLanguageResultExecution timeMemory
1147504AlgorithmWarrior동굴 (IOI13_cave)C++20
100 / 100
381 ms536 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; int const UNKNOWN=2; int const MAX=5005; int bec[MAX]; int usa[MAX]; int test[MAX]; void schimba(int pref,int valp,int vals,int N){ int i; for(i=0;i<N;++i) if(bec[i]!=UNKNOWN) test[i]=bec[i]; else if(i<=pref) test[i]=valp; else test[i]=vals; } void exploreCave(int N){ int i; for(i=0;i<N;++i) bec[i]=UNKNOWN; for(i=0;i<N;++i){ schimba(N-1,0,1,N); int val; if(tryCombination(test)==i) val=1; else val=0; int st=-1,dr=N-1; /// (] while(dr-st>1){ int mij=(st+dr)/2; schimba(mij,val,1-val,N); if(tryCombination(test)!=i) dr=mij; else st=mij; } bec[dr]=val; usa[dr]=i; } answer(bec,usa); }
#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...