Submission #1231047

#TimeUsernameProblemLanguageResultExecution timeMemory
1231047ThommyDBDrivers (BOI24_drivers)C++20
0 / 100
2095 ms1320 KiB
#include<bits/stdc++.h> using namespace std; #define int long long const int INF = 1e16; int n, m, u; vector<vector<pair<int, int>>> adj; signed main(){ cin >> n >> m >> u; adj.resize(n); for(int i = 0; i < m; i++){ int a, b, t; cin >> a >> b >> t; a--; b--; adj[a].push_back({b, t}); adj[b].push_back({a, t}); } for(int o = 0; o < u; o++){ int a, b, p; cin >> a >> b >> p; a--; b--; vector<int> dist(n, INF); vector<bool> visited(n, false); priority_queue<pair<int, int>> q; q.push({0, a}); dist[a]=0; while(!q.empty()){ int x = q.top().second; q.pop(); if(visited[x])continue; visited[x]=true; for(auto u : adj[x]){ if(max(dist[x], u.second) < dist[u.first]){ dist[u.first] = max(dist[x], u.second); q.push({-dist[u.first], u.first}); } } } if(dist[b] <= p){ cout << "TAIP\n"; } else{ cout << "NE\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...