Submission #714212

#TimeUsernameProblemLanguageResultExecution timeMemory
714212vjudge1Event Hopping (BOI22_events)C++17
10 / 100
1596 ms30612 KiB
#include <bits/stdc++.h> using namespace std; vector<vector<int>>g; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, q; cin >> n >> q; g.resize(n + 1); vector<pair<int, int>>events(n + 1); for(int i = 1;i <= n;++i){ cin >> events[i].first >> events[i].second; } for(int i = 1;i <= n;++i){ for(int j = 1;j <= n;++j){ if(i == j)continue; if(events[i].second >= events[j].first && events[i].second <= events[j].second){ g[i].push_back(j); } } } // for(int i = 1;i <= n;++i){ // cout << i << ": "; // for(int j : g[i]){ // cout << j << " "; // } // cout << '\n'; // } while(q--){ int u, v; cin >> u >> v; queue<int>q; q.push(u); vector<int>dist(n + 1, -1); dist[u] = 0; while(!q.empty()){ int cur = q.front(); q.pop(); for(int v : g[cur]){ if(dist[v] == -1){ dist[v] = dist[cur] + 1; q.push(v); } } } if(dist[v] == -1)cout << "impossible\n"; else cout << dist[v] << '\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...