Submission #1112936

#TimeUsernameProblemLanguageResultExecution timeMemory
1112936AvianshCurtains (NOI23_curtains)C++17
9 / 100
1574 ms102120 KiB
#include <bits/stdc++.h> using namespace std; signed main(){ ios::sync_with_stdio(0); cin.tie(0); int n,m,q; cin >> n >> m >> q; vector<array<int,2>>events[n+1]; for(int i = 0;i<m;i++){ int a,b; cin >> a >> b; events[a].push_back({a,b}); events[b].push_back({a,b}); } bool ans[n+5][n+5]; for(int a = 1;a<=n;a++){ int b=n; int minima = a; priority_queue<int,vector<int>,greater<int>>mins; bool work = 1; for(int i = a;i<=b;i++){ for(array<int,2>a:events[i]){ if(a[0]==i) mins.push(a[1]); } if(mins.size()) minima=max(minima,mins.top()); if(mins.size()==0){ work=0; } if(minima==i&&work){ ans[a][i]=1; } else{ ans[a][i]=0; } while(mins.size()&&mins.top()==i){ mins.pop(); } } } while(q--){ int a,b; cin >> a >> b; cout << (ans[a][b] ? "YES\n" : "NO\n"); } return 0; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...