Submission #1135888

#TimeUsernameProblemLanguageResultExecution timeMemory
1135888MateiKing80Tales of seafaring (POI13_mor)C++20
100 / 100
1250 ms102752 KiB
#include <bits/stdc++.h> using namespace std; const short INF = 1e9; int N, M, K; vector<int> adj[5005]; short dist[5005][5005][2]; void bfs(int p) { queue<pair<int, int>> q; dist[p][p][0] = 0; q.push(make_pair(p, 0)); while(!q.empty()) { int cn = q.front().first; int cd = q.front().second; q.pop(); for(int i = 0; i < adj[cn].size(); i ++) { int nn = adj[cn][i]; if(dist[p][nn][(cd + 1) % 2] > cd + 1) { dist[p][nn][(cd + 1) % 2] = cd + 1; q.push(make_pair(nn, cd + 1)); } } } } int main() { ios_base::sync_with_stdio(0); cin.tie(0); for(int i = 0; i < 5005; i ++) { for(int j = 0; j < 5005; j ++) { if(i != j) dist[i][j][0] = INF; dist[i][j][1] = INF; } } cin >> N >> M >> K; int u, v; for(int i = 0; i < M; i ++) { cin >> u >> v; u --; v --; adj[u].push_back(v); adj[v].push_back(u); } for(int i = 0; i < N; i ++) bfs(i); int a, b, d; for(int i = 0; i < K; i ++) { cin >> a >> b >> d; a --; b --; if((dist[a][b][d % 2] != INF && dist[a][b][d % 2] <= d) && !(d > 0 && adj[a].size() == 0) ) cout << "TAK" << '\n'; else cout << "NIE" << '\n'; } }

Compilation message (stderr)

mor.cpp:6:19: warning: overflow in conversion from 'double' to 'short int' changes value from '1.0e+9' to '32767' [-Woverflow]
    6 | const short INF = 1e9;
      |                   ^~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...