제출 #354318

#제출 시각아이디문제언어결과실행 시간메모리
354318David_M동굴 (IOI13_cave)C++14
100 / 100
394 ms620 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; int c[5003],f[5003],a[5003],i,j,x,l,r,m,e,ans; void exploreCave(int N){ memset(f,0,sizeof(f)); memset(a,0,sizeof(a)); memset(c,0,sizeof(c)); for(i=0;i<N;i++){ e=tryCombination(c); if(e!=-1&&e<=i){ for(int o=0;o<N;o++) if(f[o]==0) c[o]^=1; } l=0;r=N-1; while(l<=r){ m=(l+r)/2; for(int o=l;o<=m;o++) if(f[o]==0) c[o]^=1; e=tryCombination(c); if(e!=-1&&e<=i)e=1; else e=0; for(int o=l;o<=m;o++) if(f[o]==0) c[o]^=1; if(e) ans=m,r=m-1; else l=m+1; } a[ans]=i; f[ans]=1; }answer(c,a); }
#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...