Submission #1227197

#TimeUsernameProblemLanguageResultExecution timeMemory
1227197emad234Joker (BOI20_joker)C++20
0 / 100
2094 ms15432 KiB
#include <bits/stdc++.h> #define ll long long #define F first #define S second #define pii pair<ll,ll> const ll mxN = 2e5 + 5,mod = 1e9 + 7; using namespace std; vector<vector<pii>>v; int n; int m,q; bool ban[mxN],vis[mxN],color[mxN]; bool can; void dfs(int u){ vis[u] = 1; for(auto x : v[u]){ if(ban[x.S]) continue; if(!vis[x.F]){ color[x.F] = !color[u]; dfs(x.F); }else if(color[x.F] == color[u]) can = 1; } } bool solve(int l,int r){ for(int i = 1;i <= m;i++){ vis[i] = color[i] = ban[i] = 0; } can = 0; for(int i = l;i <= r;i++) ban[i] = 1; for(int i = 1;i <= n;i++) if(!vis[i]) dfs(i); return can; } signed main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >>n>>m>>q; v.resize(n + 4); for(int i = 1;i <= m;i++){ int x,y; cin >>x>>y; v[x].push_back({y,i}); v[y].push_back({x,i}); } while(q--){ int l,r; cin >>l>>r; cout<<(solve(l,r) ? "YES\n" : "NO\n"); } }
#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...