Submission #714255

#TimeUsernameProblemLanguageResultExecution timeMemory
714255vjudge1Event Hopping (BOI22_events)C++17
10 / 100
523 ms12260 KiB
#include <bits/stdc++.h> #define ll long long #define endl '\n' using namespace std; const int MAX = 3e5 + 5; vector<int> adj[1001]; int color[1001], dis[1001]; void bfs(int s){ queue<int> q; q.push(s); dis[s] = 0; color[s] = 1; while(!q.empty()){ int u = q.front(); q.pop(); for(auto v : adj[u]){ if(color[v]) continue; color[v] = 1; dis[v] = dis[u] + 1; q.push(v); } } } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, q; cin>>n>>q; vector<int> S(n + 1), E(n + 1); for (int i = 1; i <= n; i++) { cin>>S[i]>>E[i]; } for (int i = 1; i <= n; i++) { for (int j = 1; j <= n; j++) { if(S[j] <= E[i] && E[i] <= E[j]) adj[i].push_back(j); } } while(q--){ memset(color, 0, sizeof(color)); memset(dis, -1, sizeof(dis)); int s, e; cin>>s>>e; bfs(s); if(dis[e] != -1) cout<<dis[e]<<endl; else cout<<"impossible\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...