제출 #704510

#제출 시각아이디문제언어결과실행 시간메모리
704510josanneo22게임 (APIO22_game)C++17
30 / 100
4030 ms9324 KiB
#include "game.h"
#include <bits/stdc++.h>
using namespace std;

vector<int> adj[300000];
int n, k;
vector<int> vis;
void init(int N, int K) {
	n = N; k = K;
	vis.resize(n);
	for(int i=0;i<k-1;i++) adj[i].push_back(i + 1);
}

bool dfs(int i) {
	if (vis[i] == 2) return true;
	if (vis[i] == 1) return i >= k;
	vis[i] = 1;
	for(auto j:adj[i])
	{
		if (!dfs(j)) return false;
	}
	vis[i] = 2;
	return true;
}

int add_teleporter(int u, int v)
{
	for (int i = 0; i < n; i++) vis[i] = 0;
	adj[u].push_back(v);
	bool ok = dfs(0);
	return ok ? 0 : 1;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...