Submission #434011

#TimeUsernameProblemLanguageResultExecution timeMemory
434011qwerasdfzxcl도시들 (IOI15_towns)C++14
25 / 100
24 ms460 KiB
#include "towns.h" #include <bits/stdc++.h> using namespace std; int dist[111][111], n; int hubDistance(int N, int sub) { n = N; for (int i=0;i<n;i++) fill(dist[i], dist[i]+n, 0); for (int i=1;i<n;i++) dist[0][i] = getDistance(0, i); int a = 0, b = max_element(dist[0], dist[0]+n) - dist[0]; for (int i=1;i<n;i++) if (i!=b) dist[b][i] = getDistance(b, i); set<int> st; for (int i=1;i<n;i++) if (i!=b){ st.insert(dist[a][b]-dist[b][i]+(dist[a][i]+dist[b][i]-dist[a][b])/2); } int ret = dist[a][b]; for (auto &x:st){ int tmp = max(x, dist[a][b]-x); for (int i=1;i<n;i++){ int y = dist[a][b]-dist[b][i]+(dist[a][i]+dist[b][i]-dist[a][b])/2; int z = dist[a][b] - y; if (y<=x) tmp = max(tmp, dist[a][i]-y+(x-y)); else tmp = max(tmp, dist[b][i]-z+(dist[a][b]-x-z)); //printf("%d ", tmp); } //printf("\n"); ret = min(ret, tmp); } return ret; }

Compilation message (stderr)

towns.cpp: In function 'int hubDistance(int, int)':
towns.cpp:11:52: warning: conversion from 'long int' to 'int' may change value [-Wconversion]
   11 |     int a = 0, b = max_element(dist[0], dist[0]+n) - dist[0];
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
towns.cpp:7:28: warning: unused parameter 'sub' [-Wunused-parameter]
    7 | 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...