Submission #956975

#TimeUsernameProblemLanguageResultExecution timeMemory
956975LucaIlieNewspapers (CEOI21_newspapers)C++17
4 / 100
1 ms600 KiB
#include <bits/stdc++.h>

using namespace std;

const int MAX_N = 1e3;
bool vis[MAX_N + 1], side[MAX_N + 1];
vector<int> adj[MAX_N + 1];

bool checkBipartite( int u ) {
    vis[u] = true;
    bool ok = true;
    for ( int v: adj[u] ) {
        if ( !vis[v] ) {
            side[v] = side[u] ^ 1;
            ok &= checkBipartite( v );
        } else if ( side[v] == side[u] )
            ok = false;
    }

    return ok;
}

int main() {
    int n, m;

    cin >> n >> m;
    for ( int i = 0; i < m; i++ ) {
        int u, v;
        cin >> u >> v;
        adj[u].push_back( v );
        adj[v].push_back( u );
    }

    cout << "YES\n";
    cout << n << "\n";
    for ( int i = 1; i <= n / 2; i++ )
        cout << i << " " << n - i + 1 << " ";
    if ( n % 2 == 1 )
        cout << n / 2 + 1;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...