# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
395897 | Erkhemkhuu | 즐거운 행로 (APIO20_fun) | C++17 | 0 ms | 0 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
const int bigN = 505;
int vis[bigN], dist[bigN][bigN];
vector <int> tour;
vector <int> createFunTour(int N, int Q) {
int n = N;
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++)
dist[i][j] = hoursRequired(i, j);
}
int curMax = 0;
for(int i = 0; i < n; i++) {
if(dist[0][i] > dist[0][curMax])
curMax = i;
}
vis[curMax] = true;
tour.push_back(curMax);
n--;
while(n--) {
int tempMax = 0;
int maxCity = -1;
for(int i = 0; i < n; i++) {
if(vis[i]) continue;
if(dist[curMax][i] > tempMax) {
tempMax = dist[curMax][i];
maxCity = i;
}
}
assert(maxCity != -1);
vis[maxCity] = true;
tour.push_back(maxCity);
curMax = maxCity;
}
return tour;
}