This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// Muallif: Mansuraliyev Husanboy Murotali o'g'li >> NamPS
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ios ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
#define all(a) a.begin(), a.end()
#define F first
#define S second
// 0-9 >> 48-57; A-Z>>65-90 and a-z>>97-122 respectively;
//string a[11]={"CARS","cars","IuVEJxTXs","UvOHhng","yZKfAYmaqolM","NtGQibw","djPrCpek","FWzL","aySBaPyb","RM","gzYMynY"};
//string b[11]={"Unil","EPFL","vpVZzBNtL","SCubWma","ocIYneAPqxDs","hRkMGgJ","fHrFUQTj","XOwd","PolyProg","is","awesome"};
vector<pair<int,int>> g[100005];
void solve(){
int n,m; cin>>n>>m;
for(int i=0;i<m;i++){
int u,v,w; cin>>u>>v>>w;
g[u].push_back({v,w});g[v].push_back({u,w});
}
int dist[n+1];
bool vis[n+1];
for(int i=1;i<=n;i++) dist[i]=1e9,vis[i]=0;
priority_queue<pair<int,int>> q;
int k; cin>>k;while(k--){
int x; cin>>x; dist[x]=0; q.push({0,x});
}
while(!q.empty()){
int t=q.top().second; q.pop();
if(vis[t]) continue; vis[t]=1;
for(auto u:g[t]){
if(dist[u.F]>dist[t]+u.S){
dist[u.F]=dist[t]+u.S;
q.push({-dist[u.F],u.F});
}
}
}
int qq; cin>>qq;
while(qq--){
int x,y; cin>>x>>y; cout<<min(dist[x],dist[y])<<"\n";
}
}
int main(){
ios;
//int t=1; cin>>t; while(t--)
solve();
}
Compilation message (stderr)
plan.cpp: In function 'void solve()':
plan.cpp:34:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
34 | if(vis[t]) continue; vis[t]=1;
| ^~
plan.cpp:34:24: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
34 | if(vis[t]) continue; vis[t]=1;
| ^~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |