Submission #109804

#TimeUsernameProblemLanguageResultExecution timeMemory
109804arman_ferdousGame (IOI14_game)C++17
0 / 100
3 ms512 KiB
#include "game.h"
#include <bits/stdc++.h>
using namespace std;

const int N = 1510;
int p[N], cnt[N];

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

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

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