제출 #653667

#제출 시각아이디문제언어결과실행 시간메모리
653667Lobo철로 (IOI14_rail)C++17
0 / 100
77 ms1200 KiB
#include "rail.h" #include<bits/stdc++.h> using namespace std; const int maxn = 5050; map<int,int> d[maxn]; int p[maxn], tp[maxn]; int dist(int a, int b) { if(d[a].count(b)) return d[a][b]; return d[a][b] = getDistance(a,b); } void findLocation(int N, int first, int location[], int stype[]) { int n = N; p[0] = first; tp[0] = 0; // find the closest to 0 int b = -1; for(int i = 1; i < n; i++) { if(b == -1 || dist(0,i) < dist(0,b)) b = i; } p[b] = p[0]+dist(0,b); // find the closest to b int a = -1; for(int i = 0; i < n; i++) { if(i == b) continue; if(a == -1 || dist(b,i) < dist(b,a)) a = i; } p[a] = p[b]-dist(b,a); location[0] = p[0]; stype[0] = tp[0]+1; for(int i = 1; i < n; i++) { location[i] = dist(0,i); stype[i] = 2; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...