제출 #1280926

#제출 시각아이디문제언어결과실행 시간메모리
1280926avighna가장 긴 여행 (IOI23_longesttrip)C++20
5 / 100
1077 ms736 KiB
#include <bits/stdc++.h>

bool are_connected(std::vector<int> A, std::vector<int> B);

std::vector<int> longest_trip(int n, int d) {
  std::vector<std::vector<int>> adj(n);
  auto add_edge = [&](int u, int v) {
    adj[u].push_back(v);
    adj[v].push_back(u);
  };
  for (int i = 0; i < n; ++i) {
    for (int j = i + 1; j < n; ++j) {
      if (are_connected({i}, {j})) {
        add_edge(i, j);
      }
    }
  }

  std::deque<int> dq;
  dq.push_back(0);
  std::vector<bool> vis(n);
  vis[0] = true;
  while (dq.size() != n) {
    for (int &i : adj[dq.front()]) {
      if (vis[i]) {
        continue;
      }
      vis[i] = true;
      dq.push_front(i);
    }
    for (int &i : adj[dq.back()]) {
      if (vis[i]) {
        continue;
      }
      vis[i] = true;
      dq.push_back(i);
    }
  }

  return std::vector<int>(dq.begin(), dq.end());
}
#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...