Submission #1211993

#TimeUsernameProblemLanguageResultExecution timeMemory
1211993trimkusLongest Trip (IOI23_longesttrip)C++20
5 / 100
333 ms740 KiB
#include "longesttrip.h"
#include <bits/stdc++.h>

using namespace std;
int N;

std::vector<int> longest_trip(int _N, int D)
{
    N = _N;
    vector<int> adj[N];
    for (int i = 0; i < N; ++i) {
        for (int j = i + 1; j < N; ++j) {
            if (are_connected({i}, {j})) {
                adj[i].push_back(j);
                adj[j].push_back(i);
            }
        }
    } 
    // for (int i = 0; i < N; ++i) {
    //     cout << i << " : ";
    //     for (auto& u : adj[i]) {
    //         cout << u << " ";
    //     }
    //     cout << "\n";
    // }
    // cout << "\n";
    vector<int> res;
    vector<bool> vis(N);
    for (int i = 0; i < N; ++i) {
        if (adj[i].size() + 2 == N) {
            res.push_back(i);
            vis[i] = true;
            break;
        }
    }
    if (!res.size()) {
        res.push_back(0);
        vis[0] = 1;
    }
    while (true) {
        bool done = false;
        for (auto& u : adj[res.back()]) {
            if (!vis[u]) {
                vis[u] = true;
                res.push_back(u);
                done = true;
                break;
            }
        }
        if (!done) break;
    }
    return res;
}
#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...