Submission #832806

#TimeUsernameProblemLanguageResultExecution timeMemory
832806jlallas384Crocodile's Underground City (IOI11_crocodile)C++17
89 / 100
409 ms49688 KiB
#include <bits/stdc++.h> #include "crocodile.h" using namespace std; using ll = long long; int travel_plan(int n, int m, int r[][2], int L[], int k, int p[]){ priority_queue<pair<ll,int>> pq; vector<vector<ll>> dist(n); for(int i = 0; i < k; i++){ pq.emplace(0, p[i]); dist[p[i]].push_back(0); dist[p[i]].push_back(0); } vector<vector<pair<int,int>>> g(n); for(int i = 0; i < m; i++){ g[r[i][0]].emplace_back(r[i][1], L[i]); g[r[i][1]].emplace_back(r[i][0], L[i]); } while(pq.size()){ auto [d, v] = pq.top(); pq.pop(); if(-d > dist[v].back()) continue; if(v == 0) return -d; for(auto [u, w]: g[v]){ if(dist[u].empty()){ dist[u].push_back(-d + w); }else if(dist[u].size() == 1){ dist[u].push_back(-d + w); sort(dist[u].begin(), dist[u].end()); pq.emplace(-dist[u][1], u); }else{ if(-d + w < dist[u][1]){ dist[u].push_back(-d + w); sort(dist[u].begin(), dist[u].end()); dist[u].pop_back(); pq.emplace(-dist[u][1], u); } } } } }

Compilation message (stderr)

crocodile.cpp: In function 'int travel_plan(int, int, int (*)[2], int*, int, int*)':
crocodile.cpp:7:34: warning: control reaches end of non-void function [-Wreturn-type]
    7 |     priority_queue<pair<ll,int>> pq;
      |                                  ^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...