Submission #603192

#TimeUsernameProblemLanguageResultExecution timeMemory
603192Ahmadsm2005Event Hopping (BOI22_events)C++17
10 / 100
1581 ms199192 KiB
#include <bits/stdc++.h> //#define int long long using namespace std; int N,Q,S[5001],E[5001],X,Y; vector<int>ADJ[5001]; bool VIS[5001]; int DIST[5001][5001]; void BFS(int x,int DIS = 0){ for(int i = 0;i < N; i += 1)VIS[i] = 0; queue<pair<int,int>>Q; Q.push({x,0}); DIST[x][x] = 0; VIS[x] = 1; while(Q.size()){ int V = Q.front().first, S = Q.front().second; Q.pop(); for(int i = 0; i <ADJ[V].size(); i += 1){ if(!VIS[ADJ[V][i]]) Q.push({ADJ[V][i], S + 1}),VIS[ADJ[V][i]] = 1,DIST[x][ADJ[V][i]] = S + 1; } } } int32_t main() { cin.tie(0),iostream::sync_with_stdio(0); cin>>N>>Q; for(int i = 0; i < N; i += 1)for(int l = 0; l < N; l += 1)DIST[i][l] = -1; for(int i = 0; i < N; i += 1){ cin>>S[i]>>E[i]; } for(int i = 0; i < N; i += 1){ for(int l = 0; l < N; l += 1){ if(S[l] <= E[i]&&E[i]<=E[l]) ADJ[i].push_back(l); } } for(int i = 0; i < N; i += 1)BFS(i); while(Q--){ cin>>X>>Y; (DIST[X - 1][Y - 1] == -1?cout<<"impossible\n":cout<<DIST[X - 1][Y - 1]<<'\n'); } }

Compilation message (stderr)

events.cpp: In function 'void BFS(int, int)':
events.cpp:17:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for(int i = 0; i <ADJ[V].size(); i += 1){
      |                    ~~^~~~~~~~~~~~~~
#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...