제출 #1217682

#제출 시각아이디문제언어결과실행 시간메모리
1217682VMaksimoski008가장 긴 여행 (IOI23_longesttrip)C++17
5 / 100
3 ms420 KiB
#include "longesttrip.h"
#include <bits/stdc++.h>
using namespace std;

vector<int> longest_trip(int n, int d) {
    vector<int> ans = { 0 };
    set<int> st;

    for(int i=1; i<n; i++) st.insert(i);

    while(st.size() >= 2) {
        int u = *st.begin(); st.erase(u);
        int v = *st.begin(); st.erase(v);
        if(are_connected({ ans.back() }, { u }))
            ans.push_back(u);
        else
            ans.push_back(v);
        if(ans.back() == u) st.insert(v);
        if(ans.back() == v) st.insert(u);
    }

    if(st.size() == 1) {
        int u = *st.begin();
        if(are_connected({ ans.back() }, { u })) {
            ans.push_back(u);
        } else if(are_connected({ 1 }, { u })) {
            vector<int> ans2 = { u };
            for(int x : ans) ans2.push_back(x);
            ans = ans2;
        }
    }

    return ans;
}
#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...