Submission #1310073

#TimeUsernameProblemLanguageResultExecution timeMemory
1310073FaresSTHcmp (balkan11_cmp)C++20
19 / 100
2842 ms89748 KiB
#include"bits/stdc++.h" using namespace std; using ll=long long; #define S second #define F first #include"cmp.h" // vector<int>v; // void bit_set(int i){ // v[i]=1; // // cout<<"Bit Set "<<i<<endl; // } void remember(int value){ // v.clear(); // v.resize(100000,0); int l=0,r=4095,ls=0; while(l<r){ int m=(l+r-1)/2; if(value<=m)r=m,ls++; else l=m+1; } l=0,r=4095; if(ls<=6){ while(l<r){ int m=(l+r-1)/2; if(value<=m){ bit_set(m+1); r=m; } else l=m+1; } } else{ bit_set(5000); while(l<r){ int m=(l+r-1)/2; if(value<=m)r=m; else{ bit_set(m+1); l=m+1; } } } } // int bit_get(int i){ // // cout<<"Want "<<i<<" And got "<<v[i]<<endl; // return v[i]; // } int compare(int value){ int l=0,r=4095,cs=bit_get(5000); while(l<r){ int m=(l+r-1)/2; if(!cs){ if(bit_get(m+1))r=m; else l=m+1; } else{ if(!bit_get(m+1))r=m; else l=m+1; } } // return l; if(value<l)return -1; if(value==l)return 0; return 1; }
#Verdict Execution timeMemoryGrader output
Fetching results...