Submission #1174384

#TimeUsernameProblemLanguageResultExecution timeMemory
1174384HappyCapybaraShortcut (IOI16_shortcut)C++17
0 / 100
1 ms328 KiB
#include "shortcut.h" #include<bits/stdc++.h> using namespace std; #define ll long long int n; vector<vector<pair<int,ll>>> g; pair<int,ll> djk(int s){ //cout << s << endl; priority_queue<pair<int,ll>> pq; vector<ll> d(2*n, -1); pq.push({0, s}); while (!pq.empty()){ int cur = pq.top().second; ll dist = -pq.top().first; pq.pop(); if (d[cur] != -1) continue; d[cur] = dist; for (auto [next, d2] : g[cur]) pq.push({-(dist+d2), next}); } pair<int,ll> res = {s, 0}; for (int i=0; i<2*n; i++){ if (d[i] > res.second) res = {i, d[i]}; } return res; } ll calc(){ ll res = 0; for (int i=0; i<2*n; i++) res = max(res, djk(i).second); return res; //return djk(djk(djk(djk(0).first).first).first).second; } ll find_shortcut(int n, vector<int> l, vector<int> d, int c){ ::n = n; g.resize(2*n); for (int i=0; i<n; i++){ g[i].push_back({i+n, d[i]}); g[i+n].push_back({i, d[i]}); if (i == n-1) continue; g[i].push_back({i+1, l[i]}); g[i+1].push_back({i, l[i]}); } ll bsf = (1ll<<50); for (int i=0; i<n; i++){ for (int j=i+1; j<n; j++){ g[i].push_back({j, c}); g[j].push_back({i, c}); bsf = min(bsf, calc()); g[i].pop_back(); g[j].pop_back(); //cout << i << " " << j << " " << bsf << endl; } } return bsf; }

Compilation message (stderr)

shortcut.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
shortcut_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...