Submission #1104693

#TimeUsernameProblemLanguageResultExecution timeMemory
1104693NxmkxingGame (IOI14_game)C++14
0 / 100
1 ms508 KiB
#include "game.h"
#include <bits/stdc++.h>
using namespace std;

const int MxN = 1510;
int n, p[MxN], deg[MxN];

int find_set(int u) {
    if (p[u] == u) return u;
    return p[u] = find_set(p[u]);
}

void union_set(int u, int v) {
    u = find_set(u);
    v = find_set(v);
    if (u != v) {
        deg[u] += deg[v];
        p[v] = u;
    }
}

void initialize(int N) {
    n = N;
    for (int i = 0; i < n; i++) deg[i] = n - 1;
    iota(p, p + n, 0);
}

int hasEdge(int u, int v) {
    deg[u]--, deg[v]--;
    return (deg[u] == 0 || deg[v] == 0);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...