92092024-02-18 16:24:33FarkasZénóTúra (75 pont)python3Időlimit túllépés 67/75465ms101552 KiB
from sys import stdin
from collections import defaultdict

def csunyakereso(graf, csunyak, eddigi_ut):
	mehet_tovabb = len(eddigi_ut) < 2
	for kovetkezo in graf[eddigi_ut[-1]]:
		if kovetkezo in eddigi_ut:
			continue
		if kovetkezo in csunyak:
			print('NEM')
			print(len(eddigi_ut)+1)
			print(' '.join(str(x) for x in eddigi_ut + (kovetkezo,)))
			return True
		if mehet_tovabb:
			if csunyakereso(graf, csunyak, eddigi_ut + (kovetkezo,)):
				return True
	return False

T = int(stdin.readline())
for _ in range(T):
	N = int(stdin.readline())
	utak = defaultdict(set)
	sz = [int(x) for x in stdin.readline().split()]
	csunyak = set(i+1 for i, x in enumerate(sz) if x == -1)
	for _ in range(N-1):
		honnan, hova = [int(x) for x in stdin.readline().split()]
		utak[honnan].add(hova)
		utak[hova].add(honnan)
	for cs in csunyak:
		if csunyakereso(utak, csunyak, (cs,)):
			break
	else:
		print('IGEN')
	# print(sz)
	# print(csunyak)
	# print(utak)
RészfeladatÖsszpontTesztVerdiktIdőMemória
base67/75
1Elfogadva0/020ms11856 KiB
2Elfogadva0/021ms12456 KiB
3Elfogadva6/619ms12300 KiB
4Elfogadva3/345ms13812 KiB
5Elfogadva3/345ms13892 KiB
6Elfogadva4/446ms14396 KiB
7Elfogadva4/443ms14520 KiB
8Elfogadva4/445ms15016 KiB
9Elfogadva2/2264ms22220 KiB
10Elfogadva2/2277ms23124 KiB
11Elfogadva2/2270ms23740 KiB
12Elfogadva2/2275ms24332 KiB
13Elfogadva2/2279ms25300 KiB
14Elfogadva3/3266ms26952 KiB
15Elfogadva2/2275ms27656 KiB
16Elfogadva2/2284ms28396 KiB
17Elfogadva2/2268ms29844 KiB
18Elfogadva2/2268ms31332 KiB
19Elfogadva3/3264ms31728 KiB
20Elfogadva2/2266ms32568 KiB
21Elfogadva2/2289ms33872 KiB
22Elfogadva3/3284ms35064 KiB
23Időlimit túllépés0/2465ms59460 KiB
24Időlimit túllépés0/2423ms101552 KiB
25Elfogadva2/2333ms70196 KiB
26Elfogadva2/2323ms73152 KiB
27Elfogadva2/2328ms72048 KiB
28Elfogadva2/2326ms75208 KiB
29Elfogadva2/2365ms76584 KiB
30Elfogadva2/2363ms77660 KiB
31Időlimit túllépés0/2432ms80872 KiB
32Időlimit túllépés0/2425ms80320 KiB