제출 #1248938

#제출 시각아이디문제언어결과실행 시간메모리
1248938madamadam3가장 긴 여행 (IOI23_longesttrip)C++20
30 / 100
4 ms416 KiB
#include "longesttrip.h" #include <bits/stdc++.h> using namespace std; using vi = vector<int>; using vvi = vector<vi>; vi longest_trip(int N, int D) { int n = N, d = D; vi ans; if (d == 3) { ans.resize(n); iota(ans.begin(), ans.end(), 0); return ans; } else if (d == 1) { int a = 0, b = 1; vi p1(1, a), p2(1, b); for (int i = 2; i < n; i++) { if (are_connected({a}, {i})) { p1.push_back(i); a = i; } else if (are_connected({b}, {i})) { p2.push_back(i); b = i; } else { while (!p2.empty()) { p1.push_back(p2.back()); p2.pop_back(); } a = p1.back(); p2.push_back(i); b=i; } } // if (are_connected({a}, {b})) { // while (!p2.empty()) { // p1.push_back(p2.back()); // p2.pop_back(); // } // } else { // for (auto &el : p2) p1.push_back(el); // } return p1.size() > p2.size() ? p1 : p2; } 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...