답안 #698805

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
698805 2023-02-14T10:07:53 Z Cyanmond Newspapers (CEOI21_newspapers) C++17
6 / 100
1 ms 340 KB
#include <bits/stdc++.h>

int main() {
    int N, M;
    std::cin >> N >> M;
    if (M != N - 1) {
        std::cout << "NO" << std::endl;
        return 0;
    }
    std::vector<int> A(M), B(M);
    std::vector<int> deg(N);
    std::vector<std::vector<int>> tree(N);
    for (int i = 0; i < M; ++i) {
        std::cin >> A[i] >> B[i];
        --A[i], --B[i];
        tree[A[i]].push_back(B[i]);
        tree[B[i]].push_back(A[i]);
        ++deg[A[i]];
        ++deg[B[i]];
    }
    std::vector<int> sDeg(N);
    for (int i = 0; i < N; ++i) {
        for (const int t : tree[i]) {
            if (deg[t] >= 2) {
                ++sDeg[i];
            }
        }
    }
    std::vector<bool> color(N);
    auto dfs = [&](auto &&self, const int v, const int p, const bool c) -> void {
        color[v] = c;
        for (const int t : tree[v]) {
            if (t == p) {
                continue;
            }
            self(self, t, v, not c);
        }
    };
    dfs(dfs, 0, -1, false);

    bool prmA = true, prmB = true;
    for (int i = 0; i < N; ++i) {
        if (color[i] == false and sDeg[i] >= 2 and deg[i] >= 3) {
            prmA = false;
        }
        if (color[i] == true and sDeg[i] >= 2 and deg[i] >= 3) {
            prmB = false;
        }
    }
    if ((not prmA) or (not prmB)) {
        std::cout << "NO" << std::endl;
        return 0;
    }

    std::cout << "YES" << std::endl;
    std::vector<int> answer;
    for (int i = 1; i <= N; ++i) {
        answer.push_back(i);
    }
    if (N != N / 2 * 2) {
        answer.push_back(N);
    }
    for (int i = N / 2 * 2; i >= 1; --i) {
        answer.push_back(i);
    }

    std::cout << answer.size() << std::endl;
    for (auto &e : answer) {
        std::cout << e << ' ';
    }
    std::cout << std::endl;
}
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
2 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
3 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
4 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
5 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
6 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
7 Correct 1 ms 212 KB Output is correct
8 Incorrect 1 ms 212 KB Output isn't correct
9 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
2 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
3 Partially correct 0 ms 212 KB Provide a successful but not optimal strategy.
4 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
5 Partially correct 0 ms 212 KB Provide a successful but not optimal strategy.
6 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
7 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
8 Partially correct 1 ms 316 KB Provide a successful but not optimal strategy.
9 Partially correct 0 ms 212 KB Provide a successful but not optimal strategy.
10 Partially correct 0 ms 212 KB Provide a successful but not optimal strategy.
11 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
12 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
13 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
14 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
15 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
16 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
17 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
18 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
19 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
20 Partially correct 1 ms 340 KB Provide a successful but not optimal strategy.
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
2 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
3 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
4 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
5 Partially correct 1 ms 212 KB Provide a successful but not optimal strategy.
6 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
7 Correct 1 ms 212 KB Output is correct
8 Incorrect 1 ms 212 KB Output isn't correct
9 Halted 0 ms 0 KB -