Submission #936017

# Submission time Handle Problem Language Result Execution time Memory
936017 2024-03-01T01:46:14 Z peterandvoi Game (IOI14_game) C++17
0 / 100
1 ms 608 KB
#include <bits/stdc++.h>

using namespace std;

#ifdef ngu
#include "debug.h"
#else
#define debug(...) 42
#endif

vector<vector<int>> cnt;
vector<int> lab;

int get(int u) {
    return lab[u] < 0 ? u : lab[u] = get(lab[u]);
}

int hasEdge(int u, int v) {
    u = get(u);
    v = get(v);
    if (cnt[u][v] > 1) {
        cnt[u][v]--;
        return 0;
    }
    if (lab[u] > lab[v]) {
        swap(u, v);
    }
    lab[u] += lab[v];
    lab[v] = u;
    for (int i = 0; i < (int) lab.size(); ++i) {
        cnt[u][i] += cnt[v][i];
        cnt[i][u] = cnt[u][i];
    }
    return 1;
}

void initialize(int n) {
    cnt.resize(n, vector<int>(n));
    lab.resize(n, -1);
    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < n; ++j) {
            cnt[i][j] = i != j;
        }
    }
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
4 Correct 0 ms 352 KB Output is correct
5 Correct 0 ms 352 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Incorrect 0 ms 356 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 608 KB Output is correct
2 Correct 0 ms 356 KB Output is correct
3 Correct 0 ms 356 KB Output is correct
4 Correct 1 ms 356 KB Output is correct
5 Correct 1 ms 356 KB Output is correct
6 Correct 0 ms 356 KB Output is correct
7 Incorrect 0 ms 356 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 356 KB Output is correct
2 Correct 0 ms 356 KB Output is correct
3 Correct 0 ms 356 KB Output is correct
4 Correct 0 ms 356 KB Output is correct
5 Correct 0 ms 356 KB Output is correct
6 Correct 0 ms 356 KB Output is correct
7 Incorrect 0 ms 356 KB Output isn't correct
8 Halted 0 ms 0 KB -