제출 #783391

#제출 시각아이디문제언어결과실행 시간메모리
783391thimote75사이버랜드 (APIO23_cyberland)C++17
15 / 100
28 ms5712 KiB
#include "cyberland.h" #include <bits/stdc++.h> using namespace std; using bdata = vector<bool>; using ddata = vector<double>; using idata = vector<int>; using pii = pair<int, int>; using vpii = vector<pii>; using gpii = vector<vpii>; const double INF = 1e18; gpii roads; void dijkstra (ddata &distances) { priority_queue<pair<double, int>> pq; for (int i = 0; i < distances.size(); i ++) if (distances[i] != INF) pq.push({ - distances[i], i }); while (pq.size() != 0) { const auto curr = pq.top(); pq.pop(); auto dist = - curr.first; auto node = curr.second; if (dist != distances[node]) continue ; for (const auto &road : roads[node]) { int next = road.first; double cost = road.second + dist; if (cost >= distances[next]) continue ; distances[next] = cost; pq.push({ - cost, next }); } } } double solve(int N, int M, int K, int H, std::vector<int> x, std::vector<int> y, std::vector<int> c, std::vector<int> arr) { roads.clear(); roads.resize(N); for (int i = 0; i < M; i ++) { roads[x[i]].push_back({ y[i], c[i] }); roads[y[i]].push_back({ x[i], c[i] }); } ddata distances(N, INF); distances[0] = 0; dijkstra(distances); if (distances[H] == INF) return -1; return distances[H]; }

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

cyberland.cpp: In function 'void dijkstra(ddata&)':
cyberland.cpp:19:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<double>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     for (int i = 0; i < distances.size(); i ++)
      |                     ~~^~~~~~~~~~~~~~~~~~
#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...