Submission #47348

#TimeUsernameProblemLanguageResultExecution timeMemory
47348dqhungdlSightseeing (NOI14_sightseeing)C++17
15 / 25
3573 ms160336 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> ii; int n,m,T,d[500005]; vector<ii> g[500005]; set<ii> s; int main() { ios_base::sync_with_stdio(false); //freopen("TEST.INP","r",stdin); cin>>n>>m>>T; int u,v,w; while(m--) { cin>>u>>v>>w; g[u].push_back(ii(v,w)); g[v].push_back(ii(u,w)); } for(int i=2;i<=n;i++) d[i]=-1; d[1]=1e9; s.insert(ii(1e9,1)); while(s.size()>0) { int u=(*s.rbegin()).second; s.erase(s.find(*s.rbegin())); for(int i=0;i<g[u].size();i++) { int v=g[u][i].first; int w=g[u][i].second; if(d[v]<min(d[u],w)) { if(d[v]!=-1) s.erase(s.find(ii(d[v],v))); d[v]=min(d[u],w); s.insert(ii(d[v],v)); } } } while(T--) { cin>>u; cout<<d[u]<<"\n"; } }

Compilation message (stderr)

sightseeing.cpp: In function 'int main()':
sightseeing.cpp:29:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(int i=0;i<g[u].size();i++)
                     ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...