#include "towns.h"
#include <bits/stdc++.h>
using namespace std;
int hubDistance(int N, int sub){
int n = N;
if(sub >= 3) return -1;
vector<int> dist_a(n), dist_b(n), dist_c(n);
int a = 0, b, c;
int maximum_dist = -1, ind = -1;
for(int i=1; i<n; i++){
dist_a[i] = getDistance(a, i);
if(dist_a[i] > maximum_dist){
maximum_dist = dist_a[i];
ind = i;
}
}
b = ind;
maximum_dist = -1;
for(int i=0;i<n;i++){
dist_b[i] = getDistance(b, i);
if(dist_b[i] > maximum_dist){
maximum_dist = dist_b[i];
ind = i;
}
}
c = ind;
for(int i=0;i<n;i++){
dist_c[i] = getDistance(c,i);
}
int ans = 2000000000;
for(int i=0; i<n; i++){
int d1 = (dist_b[i] + dist_c[i] - maximum_dist) / 2;
int t = max(dist_b[i] - d1, dist_c[i] - d1);
ans = min(ans, t);
}
return ans;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
18 ms |
364 KB |
Output is correct |
2 |
Correct |
15 ms |
364 KB |
Output is correct |
3 |
Correct |
1 ms |
364 KB |
Output is correct |
4 |
Correct |
20 ms |
364 KB |
Output is correct |
5 |
Correct |
20 ms |
364 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
17 ms |
364 KB |
Output is correct |
2 |
Correct |
15 ms |
384 KB |
Output is correct |
3 |
Correct |
20 ms |
384 KB |
Output is correct |
4 |
Correct |
20 ms |
364 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
16 ms |
364 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
18 ms |
364 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
15 ms |
364 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
15 ms |
364 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |