이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "rail.h"
#include <bits/stdc++.h>
#define int long long
#define rep(i,n) for(int i = 0; i < n; i++)
#define all(a) a.begin(), a.end()
using namespace std;
void findLocation(signed n, signed first, signed location[], signed stype[])
{
vector<vector<int>>dist(n, vector<int>(n));
rep(i,n) rep(j,i) dist[i][j]=getDistance(i,j);
rep(i,n) for(int j = i+1; j < n; j++) dist[i][j]=dist[j][i];
int minn=1e12,mini=-1;
for(int i = 1; i < n; i++) if(dist[0][i]<minn) {minn=dist[0][i]; mini=i;}
stype[0]=1;
stype[mini]=2;
location[0]=first;
location[mini]=first+dist[0][mini];
rep(i,n) {
if(i==0||i==mini) continue;
if(dist[i][mini]+dist[mini][0] == dist[i][0]) // on the left
{
stype[i]=1;
location[i]=location[mini]-dist[i][mini];
} else {
stype[i]=2;
location[i]=location[0]+dist[0][i];
}
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |