Submission #628434

#TimeUsernameProblemLanguageResultExecution timeMemory
628434abcvuitunggioHotter Colder (IOI10_hottercolder)C++17
81 / 100
8849 ms8108 KiB
#pragma GCC optimize("O3,unroll-loops") #pragma GCC target("avx2") #include "grader.h" #include <bits/stdc++.h> using namespace std; map <pair <int, int>, int> mp,mp2; int HC(int N){ mp.clear(); mp2.clear(); int l=1,r=N,kq=N,val; int last=N; val=Guess(N); while (l<r){ if (mp2.count({l,r})){ int lo=max(1,l+r-N),hi=min(N,l+r-1); last=(lo-1<N-hi?hi:lo); val=Guess(last); } mp2[{l,r}]=1; int mid=l+r-last; mid=max(mid,1); mid=min(mid,N); val=(mp.count({last,mid})?mp[{last,mid}]:Guess(mid)); int ch=(mp.count({last,mid})); mp[{last,mid}]=val; mp[{mid,last}]=-val; if (val==0) return (mid+last)/2; if (val==1){ if (last<mid) l=(last+mid+1)/2; else{ r=(last+mid-1)/2; kq=r; } if (!ch) last=mid; continue; } if (last<mid){ r=(last+mid-1)/2; kq=r; } else l=(last+mid+1)/2; if (!ch) last=mid; } return kq; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...