Submission #556764

#TimeUsernameProblemLanguageResultExecution timeMemory
556764blueTowns (IOI15_towns)C++17
0 / 100
17 ms980 KiB
#include "towns.h" #include <vector> #include <cmath> #include <set> using namespace std; using vi = vector<int>; int hubDistance(int N, int sub) { vi dist0(N); dist0[0] = 0; for(int i = 1; i < N; i++) dist0[i] = getDistance(0, i); int S = 0; for(int i = 1; i < N; i++) if(dist0[i] > dist0[S]) S = i; int T, ST = 0; //diameter vi distS(N); distS[S] = 0; distS[0] = dist0[S]; T = 0; ST = distS[0]; for(int i = 1; i < N; i++) { if(i != S) { distS[i] = getDistance(S, i); if(distS[i] > ST) { ST = distS[i]; T = i; } } } vi diam_dist(N); for(int i = 0; i < N; i++) diam_dist[i] = (distS[i] + dist0[i] - distS[0])/2; vi xcoord(N); for(int i = 0; i < N; i++) xcoord[i] = distS[i] - diam_dist[i]; int best_diff = 5'000'000; set<int> best_coords; for(int i = 0; i < N; i++) { if(abs(2*xcoord[i] - ST) < best_diff) { best_coords.clear(); best_diff = abs(2*xcoord[i] - ST); } if(abs(2*xcoord[i] - ST) == best_diff) best_coords.insert(xcoord[i]); } return *best_coords.rbegin(); }

Compilation message (stderr)

towns.cpp: In function 'int hubDistance(int, int)':
towns.cpp:21:6: warning: variable 'T' set but not used [-Wunused-but-set-variable]
   21 |  int T, ST = 0; //diameter
      |      ^
towns.cpp:9:28: warning: unused parameter 'sub' [-Wunused-parameter]
    9 | int hubDistance(int N, int sub)
      |                        ~~~~^~~
#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...