제출 #69498

#제출 시각아이디문제언어결과실행 시간메모리
69498E869120게임 (IOI14_game)C++14
42 / 100
1076 ms5296 KiB
#include "game.h"

int p[1500][1500], N;

void initialize(int n) {
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n; j++) { if (i != j) p[i][j] = 1; }
	}
	N = n;
}

int col[100009], cnts = 0;

void dfs(int pos) {
	if (col[pos] == 1) return;
	col[pos] = 1; cnts++;
	for (int i = 0; i < N; i++) {
		if (p[pos][i] == 1) dfs(i);
	}
}

bool isconnect() {
	cnts = 0;
	for (int i = 0; i < N; i++) col[i] = 0;
	dfs(0);
	if (cnts == N) return true;
	return false;
}

int hasEdge(int u, int v) {
	p[u][v] = 0; p[v][u] = 0;
	bool I = isconnect();
	if (I == false) {
		p[u][v] = 1; p[v][u] = 1;
		return 1;
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...