제출 #429206

#제출 시각아이디문제언어결과실행 시간메모리
429206LouayFarahShortcut (IOI16_shortcut)C++14
컴파일 에러
0 ms0 KiB
#include "bits/stdc++.h" #include "shortcut.h" using namespace std; #define pb push_back #define mp make_pair #define fi first #define se second long long find_shortcut(int n, vector<int> l, vector<int> d, int c) { vector<pair<long long, long long>> adj[2*n]; for(int i = 0; i<n; i++) { adj[i].pb(mp(n+i, d[i])); adj[n+i].pb(mp(i, d[i])); } for(int i = 0; i<n-1; i++) { adj[i].pb(mp(i+1, l[i])); adj[i+1].pb(mp(i, l[i])); } long long res = 1e18; for(int i = 0; i<n; i++) { for(int j = i+1; j<n; j++) { adj[i].pb(mp(j, c)); adj[j].pb(mp(i, c)); ll curr = 0; for(int node = 0; node<2*n; node++) { vector<long long> dist(2*n, 1e18); vector<bool> visited(2*n, false); priority_queue<pair<long long, long long>> q; q.push(mp(0, node)); dist[node] = 0; while(!q.empty()) { long long a = q.top().se; q.pop(); if(visited[a]) continue; visited[a] = true; for(auto v: adj[a]) { long long b = v.fi, w = v.se; if(dist[b]>dist[a] + w) { dist[b] = dist[a] + w; q.push(mp(-dist[b], b)); } } } for(int k = 0; k<2*n; k++) curr = max(curr, dist[k]); } res = min(res, curr); for(int nb = 0; nb<(int)adj[i].size(); nb++) { if(adj[i][nb].fi==j&&adj[i][nb].se==c) { adj[i].erase(adj[i].begin() + nb); break; } } for(int nb = 0; nb<(int)adj[j].size(); nb++) { if(adj[j][nb].fi==i&&adj[j][nb].se==c) { adj[j].erase(adj[j].begin() + nb); break; } } } } return res; }

컴파일 시 표준 에러 (stderr) 메시지

shortcut.cpp: In function 'long long int find_shortcut(int, std::vector<int>, std::vector<int>, int)':
shortcut.cpp:34:13: error: 'll' was not declared in this scope; did you mean 'l'?
   34 |             ll curr = 0;
      |             ^~
      |             l
shortcut.cpp:64:21: error: 'curr' was not declared in this scope
   64 |                     curr = max(curr, dist[k]);
      |                     ^~~~
shortcut.cpp:66:28: error: 'curr' was not declared in this scope
   66 |             res = min(res, curr);
      |                            ^~~~