Submission #432009

#TimeUsernameProblemLanguageResultExecution timeMemory
432009arayiTowns (IOI15_towns)C++17
0 / 100
16 ms388 KiB
#include "towns.h" #include <bits/stdc++.h> using namespace std; const int N = 150; int n; int d[N][N]; int hubDistance(int N, int sub) { for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) d[i][j] = 0; n = N; int a = 0; for (int i = 1; i < n; i++) { d[0][i] = d[i][0] = getDistance(0, i); if(d[0][i] > d[0][a]) a = i; } int b = 0; for (int i = 1; i < n; i++) { if(a == i) continue; d[a][i] = d[i][a] = getDistance(a, i); if(d[a][i] > d[a][b]) b = i; } int pat = d[a][b]; int sm = (d[a][0] + d[0][b] - d[a][b]) / 2; sm = d[a][0] - sm; cout << sm << endl; for (int i = 0; i < n; i++) { if(i == a || i == b) continue; if(b == 0 || i == 0) { int c = (d[a][i]+d[i][b] - d[a][b]) / 2; pat = min(pat, max(d[a][i], d[i][b]) - c); } else { int l = (d[a][0] + d[0][i] - d[a][i]) / 2; //cout << i << " " << l << endl; l = d[a][0] - l; //cout << i << " " << l << endl; if(sm >= l) { int c = d[a][0] + d[a][i] - d[0][i] - sm; pat = min(pat, max(c, d[a][b] - c)); } } } return pat; }

Compilation message (stderr)

towns.cpp: In function 'int hubDistance(int, int)':
towns.cpp:9:21: warning: declaration of 'N' shadows a global declaration [-Wshadow]
    9 | int hubDistance(int N, int sub)
      |                 ~~~~^
towns.cpp:5:11: note: shadowed declaration is here
    5 | const int N = 150;
      |           ^
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...