제출 #746851

#제출 시각아이디문제언어결과실행 시간메모리
746851tutis게임 (APIO22_game)C++17
60 / 100
4040 ms27408 KiB
#pragma GCC optimize("O3")
#pragma GCC target("avx2")
#include <bits/stdc++.h>
using namespace std;
const int N = 300000;
int K;

vector<int>adj_[N];
int mn[N];
void init(int n, int k) {
	K = k;
	for (int i = 0; i < n; i++)
		mn[i] = k;
	for (int i = 0; i < k; i++)
		mn[i] = i + 1;
}

int add_teleporter(int u, int v) {
	int x = min(v, mn[v]);
	int ret = 0;
	function<void(int)>dfs = [&](int i) {
		mn[i] = x;
		if (i < K && x <= i) {
			ret = 1;
		}
		for (int j : adj_[i])
			if (mn[j] > x)
				dfs(j);
	};
	if (mn[u] > x)
		dfs(u);
	adj_[v].push_back(u);
	return ret;
}
#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...