Submission #760059

# Submission time Handle Problem Language Result Execution time Memory
760059 2023-06-17T07:08:55 Z jk410 Bulb Game (FXCUP4_bulb) C++17
11 / 100
1 ms 340 KB
#include <bits/stdc++.h>
#include "bulb.h"
using namespace std;

int n;
vector<int> l, r;
vector<int> ans;

void update(int lx, int rx, int v) {
	ans[lx] += v;
	ans[rx + 1] -= v;
}

int dfs(int cur, int f, int s, int cnt) {
	if (cur == -1)
		return 0;
	if (cur == -2) {
		if (f == -1)
			return 0;
		else if (s == -1) {
			if (cnt == n)
				return 0;
			update(0, n - 1, 1);
			update(f, f, 1);
			return 1;
		}
		update(f, f, 1);
		update(s, s, 1);
		return 0;
	}
	int tmp = 0;
	tmp += dfs(l[cur], f, s, cnt + 1);
	int nf = f, ns = s;
	if (ns == -1) {
		if (nf == -1)
			nf = cur;
		else
			ns = cur;
		tmp += dfs(r[cur], nf, ns, cnt + 1);
	}
	update(cur, cur, -tmp);
	return tmp;
}

int FindWinner(int T, std::vector<int> L, std::vector<int> R){
	n = (int)L.size();
	l = L;
	r = R;
	ans.resize(n + 1);
	dfs(0, -1, -1, 0);
	for (int i = 1; i < n; i++)
		ans[i] += ans[i - 1];
	for (int i = 0; i < n; i++) {
		if (!ans[i])
			return 1;
	}
	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 304 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 304 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Correct 1 ms 340 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 340 KB Output is correct
13 Correct 0 ms 212 KB Output is correct
14 Correct 1 ms 212 KB Output is correct
15 Incorrect 1 ms 212 KB Output isn't correct
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 304 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 1 ms 340 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 340 KB Output is correct
15 Incorrect 1 ms 212 KB Output isn't correct
16 Halted 0 ms 0 KB -