Submission #20740

# Submission time Handle Problem Language Result Execution time Memory
20740 2017-02-14T18:32:08 Z rose0310 Game (IOI14_game) C++14
0 / 100
0 ms 18876 KB
#include "game.h"
int ed[1515][1515]={},N;
int p[1515];
void initialize(int n) {
	N=n;
    for(int i=0;i<n;i++){
		for(int j=0;j<n;j++){
			ed[i][j]=-1;
		}
		p[i]=i;
    }
}
int find(int x){
	if(x==p[x]) return x;
	return p[x]=find(p[x]);
}
int hasEdge(int u, int v) {
	if(ed[u][v]>=0) return ed[u][v];
	if(find(u)==find(v)) return ed[u][v]=ed[v][u]=1;
    if(ed[u][N]>=N-2 || ed[v][N]>=N-2) {
			p[find(u)]=find(v);
			return ed[u][v]=ed[v][u]=1;
	}
	else{
		ed[u][N]++;
		ed[v][N]++;
		return ed[u][v]=ed[v][u]=0;

	}
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 18876 KB Output is correct
2 Incorrect 0 ms 18876 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 18876 KB Output is correct
2 Incorrect 0 ms 18876 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 18876 KB Output is correct
2 Incorrect 0 ms 18876 KB Output isn't correct
3 Halted 0 ms 0 KB -