Submission #229798

#TimeUsernameProblemLanguageResultExecution timeMemory
229798quocnguyen1012Crocodile's Underground City (IOI11_crocodile)C++14
100 / 100
694 ms74488 KiB
#include <bits/stdc++.h> #include <iostream> using namespace std; typedef int64_t llo; #define mp make_pair #define a first #define b second #define pb push_back #include <crocodile.h> llo ma=1000000001; int travel_plan(int n,int m,int r[][2],int l[],int k,int p[]){ llo vis[n]; for(llo i=0;i<n;i++){ vis[i]=0; } for(llo i=0;i<k;i++){ vis[p[i]]=1; } vector<pair<llo,llo>> adj[n]; for(llo i=0;i<m;i++){ adj[r[i][0]].pb({r[i][1],(llo)l[i]}); adj[r[i][1]].pb({r[i][0],(llo)l[i]}); } llo dist[n]; llo dist2[n]; for(llo i=0;i<n;i++){ dist[i]=ma; dist2[i]=ma; } priority_queue<pair<llo,llo>> ac; for(llo i=0;i<n;i++){ if(vis[i]==1){ dist[i]=0; dist2[i]=0; ac.push({0,i}); } } llo vis2[n]; for(llo i=0;i<n;i++){ vis2[i]=0; } while(ac.size()){ pair<llo,llo> no=ac.top(); ac.pop(); no.a=-no.a; if(no.a>dist2[no.b]){ continue; } for(auto j:adj[no.b]){ llo co=dist2[no.b]+j.b; if(dist[j.a]>=co){ llo acc=dist2[j.a]; dist2[j.a]=dist[j.a]; dist[j.a]=co; if(dist2[j.a]<acc and dist2[j.a]!=ma){ ac.push({-dist2[j.a],j.a}); } } else if(dist2[j.a]>co){ dist2[j.a]=co; ac.push({-dist2[j.a],j.a}); } } } return dist2[0]; }

Compilation message (stderr)

crocodile.cpp: In function 'int travel_plan(int, int, int (*)[2], int*, int, int*)':
crocodile.cpp:38:6: warning: variable 'vis2' set but not used [-Wunused-but-set-variable]
  llo vis2[n];
      ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...