제출 #1296653

#제출 시각아이디문제언어결과실행 시간메모리
1296653vincentbucourt1도시들 (IOI15_towns)C++20
0 / 100
9 ms1852 KiB
#include "towns.h" #include <bits/stdc++.h> using namespace std; int hubDistance(int N, int subtask) { int maxDist = 0, diam1 = 0; for (int i = 1; i < N; i++) { int distOn = getDistance(0, i); if (distOn > maxDist) { maxDist = distOn, diam1 = i; } } maxDist = 0; vector<int> distDiam1(N, 0); for (int i = 0; i < N; i++) { distDiam1[i] = getDistance(diam1, i); } int diam2 = max_element(distDiam1.begin(), distDiam1.end()) - distDiam1.begin(); vector<int> distDiam2(N, 0); for (int i = 0; i < N; i++) { distDiam2[i] = getDistance(diam2, i); } vector<int> distHor(N, 0), distVert(N, 0); // from diam1 int maxMin = 0; for (int i = 0; i < N; i++) { distHor[i] = (distDiam1[diam2] + distDiam2[i] - distDiam1[i]) / 2; distVert[i] = (3*distDiam2[i] - distDiam1[diam2] - distDiam1[i]) / 2; maxMin = max(distHor[i], distDiam1[diam2] - distHor[i]); } return maxMin; }
#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...