Submission #479727

#TimeUsernameProblemLanguageResultExecution timeMemory
479727YuisuyunoCrocodile's Underground City (IOI11_crocodile)C++14
0 / 100
1 ms2636 KiB
//Nguyen Huu Hoang Minh #include <bits/stdc++.h> //#include "crocodile.h" #define sz(x) int(x.size()) #define all(x) x.begin(),x.end() #define reset(x) memset(x, 0,sizeof(x)) #define pb push_back #define mp make_pair #define fi first #define se second #define remain(x) if (x > MOD) x -= MOD #define ii pair<int, int> #define iiii pair< ii , ii > #define viiii vector< iiii > #define vi vector<int> #define vii vector< ii > #define bit(x, i) (((x) >> (i)) & 1) #define Task "test" using namespace std; typedef long double ld; const int inf = 1e10; const int minf = -1e10; vector<ii> g[100005]; bool is[100005]; int travel_plan(int N, int M, int R[][2], int L[], int K, int P[]) { for(int i=0; i<M; i++){ int u = R[i][0]; int v = R[i][1]; int z = L[i]; g[u].push_back(ii(v,z)); g[v].push_back(ii(u,z)); } vector<vector<int>> d(N+1,vector<int>(3,0)); priority_queue<ii, vii, greater<ii>> q; vector<bool> vst(N+1,false); for(int i=0; i<K; i++) q.push(ii(0,P[i])), d[P[i]][0]=0; while (q.size()){ int u = q.top().se; int du = q.top().fi; q.pop(); if (vst[u]) continue; vst[u] = 1; for(auto i : g[u]){ int v = i.fi; int uv = du + i.se; if (vst[v]) continue; if (d[v][1] > uv){ d[v][1] = uv; q.push(ii(d[v][1],v)); } sort(all(d[v])); } } return d[0][1]; }

Compilation message (stderr)

crocodile.cpp:23:17: warning: overflow in conversion from 'double' to 'int' changes value from '1.0e+10' to '2147483647' [-Woverflow]
   23 | const int inf = 1e10;
      |                 ^~~~
crocodile.cpp:24:18: warning: overflow in conversion from 'double' to 'int' changes value from '-1.0e+10' to '-2147483648' [-Woverflow]
   24 | const int minf = -1e10;
      |                  ^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...