제출 #1223079

#제출 시각아이디문제언어결과실행 시간메모리
1223079nikd가장 긴 여행 (IOI23_longesttrip)C++20
0 / 100
4 ms408 KiB
#include "longesttrip.h"
#include <bits/stdc++.h>
using namespace std;

std::vector<int> longest_trip(int n, int D)
{
    vector<vector<bool>> adj(n, vector<bool>(n));
    for(int i = 0; i<n; i++){
        for(int j = i+1; j<n; j++){
            if(are_connected({i}, {j})){
                adj[i][j] = 1;
                adj[j][i] = 1;
            }
        }
    }
    // longest path ???
    // D=2
    vector<int> vis(n, 0);
    vector<int> sol(n-1);
    int nd = 0;
    for(int i = 0; i<n-1; i++){
        vis[nd] = 1;
        sol[i] = nd;
        if(i == n-2) break;
        for(int u: adj[nd]){
            if(!vis[u]){
                nd = u; break;
            }
        }
    }
    int manc = -1;
    for(int i= 0; i<n; i++) if(!vis[i]){
        manc = i; break;
    }
    if(adj[nd][manc]) sol.push_back(manc);
    else sol.insert(sol.begin(), manc);
    return sol;
}
#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...