Submission #618714

# Submission time Handle Problem Language Result Execution time Memory
618714 2022-08-02T06:54:41 Z drdilyor Newspapers (CEOI21_newspapers) C++17
50 / 100
65 ms 8140 KB
#include <bits/stdc++.h>
#ifdef ONPC
    #include "t_debug.cpp"
#else
    #define debug(...) 42
#endif
#define sz(a) ((int)(a).size())
using namespace std;
using ll = long long;
const int INF = 1e9;
const ll INFL = 1e18;
const int RANDOM = chrono::high_resolution_clock::now().time_since_epoch().count();
mt19937 rng(RANDOM);
template<typename T, typename U> istream& operator>>(istream& is, pair<T, U>& p) { return is >> p.first >> p.second; }
const int N = 2e5, LOGN = 17, MOD = 1e9+7;

int solve() {
    int n;
    if (!(cin >> n)) {
        return 1;
    }
    int m; cin >> m;
    vector<vector<int>> adj(n);
    for (int i = 0;i < m; i++) {
        int u, v;
        cin >> u >> v;
        u--; v--;
        adj[u].push_back(v);
        adj[v].push_back(u);
    }

    if (m != n-1) {cout << "NO\n"; return 0;}
    bool yes = true;

    vector<int> bad(n);

    function<pair<int,int>(int,int)> depth = [&](int i, int p)->pair<int,int> {
        if (bad[i]) return {0,-1};
        int res = 0, rese = i;
        for (int e : adj[i]) {
            if (e != p) {
                auto [d, v] = depth(e, i);
                if (d+1 > res) {
                    res = d+1;
                    rese = v;
                }
            }
        }
        return {res, rese};
    };

    auto [_d, d1] = depth(0, -1);
    auto [_dd, d2] = depth(d1, -1);

    vector<int> path = {d1};
    vector<int> visited(n);
    function<bool(int)> findD = [&](int i) {
        if (visited[i]) return false;
        if (i == d2) return true;
        visited[i] = true;
        for (int e : adj[i]) {
            path.push_back(e);
            if (findD(e)) return true;
            path.pop_back();
        }
        return false;
    };
    findD(d1);
    debug(d1, d2, path);
    for (int i : path) bad[i] = true;

    for (int i = 0; i < sz(path); i++) {
        int v = path[i];
        for (int e : adj[v]) {
            if (depth(e,v).first > 1) yes = false;
        }
    }

    cout << (yes ? "YES" : "NO") << '\n';

    if (yes) {
        cout << n << '\n';
        for (int i = 1; i <= n; i++) cout << i << ' ';
    }

    return 0;
}

signed main() {
    cin.tie(0)->sync_with_stdio(0);
    int t = 1;
    #ifdef ONPC
    t = 10000;
    #endif
    while (t-- && cin) {
        if (solve()) break;
        #ifdef ONPC
            cout << "____________________" << endl;
        #endif
    }
    return 0;
}

/*
     █████               █████  ███  ████                               
    ▒▒███               ▒▒███  ▒▒▒  ▒▒███                               
  ███████  ████████   ███████  ████  ▒███  █████ ████  ██████  ████████ 
 ███▒▒███ ▒▒███▒▒███ ███▒▒███ ▒▒███  ▒███ ▒▒███ ▒███  ███▒▒███▒▒███▒▒███
▒███ ▒███  ▒███ ▒▒▒ ▒███ ▒███  ▒███  ▒███  ▒███ ▒███ ▒███ ▒███ ▒███ ▒▒▒ 
▒███ ▒███  ▒███     ▒███ ▒███  ▒███  ▒███  ▒███ ▒███ ▒███ ▒███ ▒███     
▒▒████████ █████    ▒▒████████ █████ █████ ▒▒███████ ▒▒██████  █████    
 ▒▒▒▒▒▒▒▒ ▒▒▒▒▒      ▒▒▒▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒   ▒▒▒▒▒███  ▒▒▒▒▒▒  ▒▒▒▒▒     
                                            ███ ▒███                    
                                           ▒▒██████                     
                                            ▒▒▒▒▒▒
*/

Compilation message

newspapers.cpp: In function 'int solve()':
newspapers.cpp:5:24: warning: statement has no effect [-Wunused-value]
    5 |     #define debug(...) 42
      |                        ^~
newspapers.cpp:69:5: note: in expansion of macro 'debug'
   69 |     debug(d1, d2, path);
      |     ^~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
3 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
4 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
5 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
6 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
7 Correct 0 ms 212 KB Output is correct
8 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
9 Correct 0 ms 212 KB Output is correct
10 Partially correct 1 ms 320 KB Failed to provide a successful strategy.
11 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
12 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
13 Partially correct 0 ms 324 KB Failed to provide a successful strategy.
14 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
15 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
16 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
17 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
18 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
19 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
20 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
21 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
22 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
23 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
24 Partially correct 1 ms 328 KB Failed to provide a successful strategy.
25 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
26 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
27 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
28 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
29 Correct 0 ms 212 KB Output is correct
30 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
31 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
32 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
33 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
34 Correct 1 ms 320 KB Output is correct
35 Partially correct 5 ms 212 KB Failed to provide a successful strategy.
36 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
37 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
38 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
39 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
40 Partially correct 1 ms 320 KB Failed to provide a successful strategy.
41 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
42 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
43 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
44 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
45 Correct 0 ms 324 KB Output is correct
46 Correct 1 ms 212 KB Output is correct
47 Correct 1 ms 212 KB Output is correct
48 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
49 Correct 1 ms 328 KB Output is correct
50 Correct 1 ms 212 KB Output is correct
51 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
52 Correct 0 ms 212 KB Output is correct
53 Correct 1 ms 212 KB Output is correct
54 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
55 Correct 1 ms 212 KB Output is correct
56 Correct 1 ms 212 KB Output is correct
57 Correct 1 ms 212 KB Output is correct
58 Correct 0 ms 212 KB Output is correct
59 Correct 0 ms 324 KB Output is correct
60 Correct 1 ms 212 KB Output is correct
61 Correct 1 ms 212 KB Output is correct
62 Correct 1 ms 212 KB Output is correct
63 Correct 1 ms 212 KB Output is correct
64 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
3 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
4 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
5 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
6 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
7 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
8 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
9 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
10 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
11 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
12 Partially correct 0 ms 340 KB Failed to provide a successful strategy.
13 Partially correct 0 ms 340 KB Failed to provide a successful strategy.
14 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
15 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
16 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
17 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
18 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
19 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
20 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
3 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
4 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
5 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
6 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
7 Correct 0 ms 212 KB Output is correct
8 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
9 Correct 0 ms 212 KB Output is correct
10 Partially correct 1 ms 320 KB Failed to provide a successful strategy.
11 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
12 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
13 Partially correct 0 ms 324 KB Failed to provide a successful strategy.
14 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
15 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
16 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
17 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
18 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
19 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
20 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
21 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
22 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
23 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
24 Partially correct 1 ms 328 KB Failed to provide a successful strategy.
25 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
26 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
27 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
28 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
29 Correct 0 ms 212 KB Output is correct
30 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
31 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
32 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
33 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
34 Correct 1 ms 320 KB Output is correct
35 Partially correct 5 ms 212 KB Failed to provide a successful strategy.
36 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
37 Partially correct 0 ms 212 KB Failed to provide a successful strategy.
38 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
39 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
40 Partially correct 1 ms 320 KB Failed to provide a successful strategy.
41 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
42 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
43 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
44 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
45 Correct 0 ms 324 KB Output is correct
46 Correct 1 ms 212 KB Output is correct
47 Correct 1 ms 212 KB Output is correct
48 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
49 Correct 1 ms 328 KB Output is correct
50 Correct 1 ms 212 KB Output is correct
51 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
52 Correct 0 ms 212 KB Output is correct
53 Correct 1 ms 212 KB Output is correct
54 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
55 Correct 1 ms 212 KB Output is correct
56 Correct 1 ms 212 KB Output is correct
57 Correct 1 ms 212 KB Output is correct
58 Correct 0 ms 212 KB Output is correct
59 Correct 0 ms 324 KB Output is correct
60 Correct 1 ms 212 KB Output is correct
61 Correct 1 ms 212 KB Output is correct
62 Correct 1 ms 212 KB Output is correct
63 Correct 1 ms 212 KB Output is correct
64 Correct 1 ms 212 KB Output is correct
65 Correct 1 ms 324 KB Output is correct
66 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
67 Partially correct 0 ms 324 KB Failed to provide a successful strategy.
68 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
69 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
70 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
71 Correct 1 ms 212 KB Output is correct
72 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
73 Correct 1 ms 212 KB Output is correct
74 Partially correct 1 ms 320 KB Failed to provide a successful strategy.
75 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
76 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
77 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
78 Partially correct 1 ms 212 KB Failed to provide a successful strategy.
79 Correct 1 ms 340 KB Output is correct
80 Correct 1 ms 340 KB Output is correct
81 Correct 2 ms 340 KB Output is correct
82 Correct 1 ms 340 KB Output is correct
83 Correct 1 ms 340 KB Output is correct
84 Correct 1 ms 340 KB Output is correct
85 Correct 2 ms 340 KB Output is correct
86 Correct 1 ms 340 KB Output is correct
87 Correct 1 ms 340 KB Output is correct
88 Correct 1 ms 332 KB Output is correct
89 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
90 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
91 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
92 Partially correct 1 ms 332 KB Failed to provide a successful strategy.
93 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
94 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
95 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
96 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
97 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
98 Partially correct 2 ms 404 KB Failed to provide a successful strategy.
99 Partially correct 1 ms 344 KB Failed to provide a successful strategy.
100 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
101 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
102 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
103 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
104 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
105 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
106 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
107 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
108 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
109 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
110 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
111 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
112 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
113 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
114 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
115 Partially correct 1 ms 328 KB Failed to provide a successful strategy.
116 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
117 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
118 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
119 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
120 Partially correct 2 ms 340 KB Failed to provide a successful strategy.
121 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
122 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
123 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
124 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
125 Partially correct 1 ms 324 KB Failed to provide a successful strategy.
126 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
127 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
128 Partially correct 1 ms 340 KB Failed to provide a successful strategy.
129 Correct 1 ms 340 KB Output is correct
130 Correct 1 ms 340 KB Output is correct
131 Correct 1 ms 340 KB Output is correct
132 Correct 1 ms 324 KB Output is correct
133 Correct 1 ms 340 KB Output is correct
134 Correct 14 ms 1964 KB Output is correct
135 Correct 11 ms 1892 KB Output is correct
136 Correct 34 ms 5388 KB Output is correct
137 Correct 21 ms 3280 KB Output is correct
138 Correct 34 ms 4656 KB Output is correct
139 Correct 65 ms 7928 KB Output is correct
140 Correct 9 ms 1492 KB Output is correct
141 Correct 4 ms 724 KB Output is correct
142 Correct 55 ms 7424 KB Output is correct
143 Correct 63 ms 8140 KB Output is correct
144 Partially correct 1 ms 468 KB Failed to provide a successful strategy.
145 Partially correct 1 ms 468 KB Failed to provide a successful strategy.