Submission #523956

#TimeUsernameProblemLanguageResultExecution timeMemory
523956lucriTrampoline (info1cup20_trampoline)C++17
11 / 100
766 ms3656 KiB
#include <iostream> #include <fstream> #include <algorithm> using namespace std; int n,m,k,q; pair<int,int>tr[200010]; int xb,yb,xe,ye; int cb(int b,int e) { if(b>e) return b; int m=(b+e)/2; if(tr[m].first<xb||tr[m].first==xb&&tr[m].second<yb) return cb(m+1,e); return cb(b,m-1); } ifstream in("test.in"); ofstream out("test.out"); int main() { cin>>n>>m>>k; for(int i=1;i<=k;++i) cin>>tr[i].first>>tr[i].second; sort(tr+1,tr+k+1); tr[k+1]={1111111111,1111111111}; cin>>q; while(q--) { cin>>xb>>yb>>xe>>ye; int poz=cb(1,k); int l=xb,c=yb; while(l!=xe) { if(tr[poz].first==l) { ++l; c=tr[poz].second; } else { c=1111111111; break; } if(l==xe||c>ye) break; xb=l; yb=c; cb(poz+1,k); } if(c<=ye) cout<<"Yes"<<'\n'; else cout<<"No"<<'\n'; } return 0; }

Compilation message (stderr)

trampoline.cpp: In function 'int cb(int, int)':
trampoline.cpp:13:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
   13 |     if(tr[m].first<xb||tr[m].first==xb&&tr[m].second<yb)
      |                        ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...