Submission #65245

#TimeUsernameProblemLanguageResultExecution timeMemory
65245imsifileMagic Dowsing (FXCUP3_magic)C++98
100 / 100
3 ms384 KiB
#include "dowsing.h" int NN, ok1, ok2; int f(int a, int b){ for(int i=1; i<=NN; i++){ if(i!=a && i!=b) return i; } return 0; } void FindTreasure(int N) { NN = N; for(int i=1; i<=N; i++){ if(Detect(i,i)){ if(ok1) ok2=i; else ok1=i; } } if(ok1){ if(Detect(ok1,f(ok1,ok2))) Report(ok1,ok2); else Report(ok2,ok1); } else{ // N=4 : do (1,2) // N=5 : do (1,2),(3,4) int i; for(i=1; i<=N-2; i+=2){ if(Detect(i,i+1)){ if(Detect(i,f(i,i+1))) Report(i,i); else Report(i+1,i+1); return; } } if(i==N) Report(i,i); else if(Detect(i,f(i,i+1))) Report(i,i); else Report(i+1,i+1); } }
#Verdict Execution timeMemoryGrader output
Fetching results...