Submission #1064023

#TimeUsernameProblemLanguageResultExecution timeMemory
1064023TheQuantiXToy Train (IOI17_train)C++17
0 / 100
6 ms1556 KiB
#include <bits/stdc++.h>

using namespace std;
using ll = long long;

constexpr ll INF = 1000000000000000000LL;

ll n, m, q, k, x, y, a, c;
vector<ll> G[5000];

vector<int> who_wins(vector<int> a, vector<int> r, vector<int> u, vector<int> v) {
    n = a.size();
    m = u.size();
    queue<ll> q;
    vector<ll> cnt(n);
    vector<int> vis(n);
    for (int i = 0; i < m; i++) {
        cnt[u[i]]++;
        G[v[i]].push_back(u[i]);
    }
    for (int i = 0; i < n; i++) {
        if (r[i]) {
            q.push(i);
        }
    }
    while (!q.empty()) {
        ll x = q.front();
        q.pop();
        if (vis[x]) {
            continue;
        }
        vis[x] = 1;
        for (auto i : G[x]) {
            if (a[i] && !vis[i]) {
                q.push(i);
            }
            if (!a[i]) {
                cnt[i]--;
                if (cnt[i] == 0 && !vis[i]) {
                    q.push(i);
                }
            }
        }
    }
    return vis;
}
#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...