Submission #1310071

#TimeUsernameProblemLanguageResultExecution timeMemory
1310071FaresSTHcmp (balkan11_cmp)C++20
0 / 100
515 ms89752 KiB
#include"bits/stdc++.h" using namespace std; using ll=long long; #define S second #define F first #include"cmp.h" // int k,cn; // vector<int>v; // void bit_set(int i){ // v[i]=1; // cn++; // cout<<"Bit Set "<<i<<endl; // } void remember(int value){ // v.clear(); // v.resize(100000,0); // cn=0; int l=0,r=4096,ls=0; while(l<r){ int m=(l+r-1)/2; if(value<=m)r=m,ls++; else l=m+1; } l=0,r=4096; 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){ // k++; // cout<<"Want "<<i<<" And got "<<v[i]<<endl; // return v[i]; // } int compare(int value){ // k=0; int l=0,r=4096,cs=bit_get(5000); while(r-l>1){ int m=(l+r-1)/2; // cout<<l<<' '<<r<<' '; 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...