Submission #111836

#TimeUsernameProblemLanguageResultExecution timeMemory
111836vexDeda (COCI17_deda)C++14
0 / 140
567 ms3152 KiB
#include<bits/stdc++.h> #define maxn 200005 #define INF 10000000000007 using namespace std; int n; long long a[maxn]; int blok,len; long long b[1000]; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); cin>>n; for(int i=0;i<n;i++)a[i]=INF; blok=sqrt(n); len=(n+blok-1)/blok; for(int i=0;i<len;i++)b[i]=INF; int q; cin>>q; while(q>0) { char c; cin>>c; if(c=='M') { long long st; int uzr; cin>>st>>uzr; uzr--; a[uzr]=st; int bb=uzr/blok; b[bb]=min(b[bb],st); } else { long long br; int uzr; cin>>br>>uzr; uzr--; while(uzr<n && uzr%blok!=0 && a[uzr]>br)uzr++; int bb=uzr/blok; while(bb<len && b[bb]>br) { uzr+=blok; bb++; } if(uzr<n)cout<<uzr+1<<endl; else cout<<"-1"<<endl; } q--; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...