제출 #1157415

#제출 시각아이디문제언어결과실행 시간메모리
1157415Doncho_Bonboncho도시들 (IOI15_towns)C++20
0 / 100
8 ms328 KiB
#include "towns.h" #include <bits/stdc++.h> using namespace std; #ifndef LOCAL #define cerr if(false) cerr #endif template< class T, class T2 > inline bool chkmax( T& a, const T2& b ){ return a < b ? a = b, 1 : 0 ; }; template< class T, class T2 > inline bool chkmin( T& a, const T2& b ){ return a > b ? a = b, 1 : 0 ; }; #define out(x) #x << " = " << x << " " typedef long long ll; const int MAX_N = 128; const ll inf = 1e17; int n; int dist[MAX_N][MAX_N]; int hubDistance(int N, int sub) { n = N; ll mxDist = -1; int d1, d2; for( int i=0 ; i < n ; i++ ){ if( i == 0 ) continue; ll currDist = getDistance( 0, i ); } mxDist = -1; for( int i=0 ; i < n ; i++ ){ if( i == d1 ) continue; ll currDist = getDistance( d1, i ); if( chkmax( mxDist, currDist ) ) d2 = i; } ll distDiam = getDistance( d1, d2 ); cerr << out( d1 ) << out( d2 ) << out( getDistance( d1, d2 ) ) << endl; ll nas = inf; for( int i=0 ; i < n ; i++ ){ if( i == d1 || i == d2 ) continue; ll dist1 = getDistance( i, d1 ); ll dist2 = getDistance( i, d2 ); ll diff = abs( dist1 - dist2 ); ll currNas = ( distDiam - diff ) / 2 + diff; chkmin( nas, currNas ); } return nas; }
#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...