Submission #1049492

#TimeUsernameProblemLanguageResultExecution timeMemory
1049492ortsacPipes (BOI13_pipes)C++17
18.15 / 100
93 ms44184 KiB
#include <bits/stdc++.h>
 
using namespace std;

#define int long long
#define pii pair<long long, long long>
#define fr first
#define se second

const int MAXN = 1e5 + 10;
vector<pii> adj[MAXN];
vector<int> bEdges;
vector<pii> edges;
int h[MAXN];
int change[MAXN];
bool vis[MAXN];

void dfs(int node, int caller) {
    vis[node] = 1;
    for (auto [u, z] : adj[node]) {
        if (u == caller) continue;
        if (vis[u]) bEdges.push_back(z);
        else {
            h[u] = h[node] + 1;
            dfs(u, node);
        }
    }
}

int32_t main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n, m;
    cin >> n >> m;
    for (int i = 1; i <= n; i++) cin >> change[i];
    for (int i = 0; i < m; i++) {
        int a, b;
        cin >> a >> b;
        edges.push_back({a, b});
        adj[a].push_back({b, i});
        adj[b].push_back({a, i});
    }
    if (m > (n + 1)) {
        cout << "0\n";
    }
    //dfs(1, 0);
    //if (bEdges.size() > 1) {
    //    cout << "0\n";
    //    return 0;
    //}
    //for (auto k : bEdges) {
    //    auto u = edges[k];
    //    if (((h[u.fr] + h[u.se] + 1) % 2) == 0) {
    //        cout << "0\n";
    //        return 0;
    //    }
    //}
    //cout << "oi\n";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...