제출 #1333710

#제출 시각아이디문제언어결과실행 시간메모리
1333710justin271828Laser Strike (EGOI25_laserstrike)C++20
8 / 100
4 ms412 KiB
#include <bits/stdc++.h>
using namespace std;

#define ii pair<int, int>
#define f first
#define s second

int main() {
    int P, N;
    cin >> P >> N;
    if (P == 1) {
        vector<int> v[N];
        for (int i = 1; i < N; i++) {
            int a, b;
            cin >> a >> b;
            v[a].push_back(b);
            v[b].push_back(a);
        }
        int root = -1;
        for (int i = 0; i < N; i++) {
            if (v[i].size() >= 3) root = i;
        }
        if (root == 0) {
            cout << 1 << "\n";
            for (int i = 1; i < N; i++) cout << i << "\n";
        }
        else {
            cout << 0 << "\n";
            for (int i = 0; i < N; i++) {
                if (i == root) continue;
                cout << i << "\n";
            }
        }
    }
    else {
        int str;
        cin >> str;
        if (str == 1) {
            for (int i = 1; i < N; i++) {
                int a, b;
                cin >> a >> b;
                cout << b << "\n";
            }
        }
        else {
            int a, b;
            cin >> a >> b;
            cout << a << "\n";
            for (int i = 2; i < N; i++) {
                int x, y;
                cin >> x >> y;
                if (x == b) cout << y << "\n";
                else cout << x << "\n";
            }
        }
        
    }
    return 0;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...