From 462dc84ecf3ca01791d1dccd38e0a00695181d3b Mon Sep 17 00:00:00 2001 From: kwout Date: Sat, 11 Feb 2023 16:07:17 -0500 Subject: [PATCH] solved 12b in 12a --- 2021/day12/12.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/2021/day12/12.py b/2021/day12/12.py index 5149bfe..3527543 100644 --- a/2021/day12/12.py +++ b/2021/day12/12.py @@ -11,15 +11,14 @@ for l in lines: di[l[1]] = [] di[l[1]].append(l[0]) -print(di) def travel(stack, node): stack.append(node) if node == 'end': paths.append(stack.copy()) - print(stack) for n in di[node]: - if n not in stack or n.isupper(): + #if n not in stack or n.isupper(): + if (not(n in stack and any(stack.count(i) > 1 for i in [j for j in stack if j.islower()])) or n.isupper()) and n != 'start' and stack[-1] != 'end': travel(stack,n) stack.pop() @@ -27,5 +26,5 @@ for start in di['start']: stack = ['start'] travel(stack, start) - +print(len([i for i in paths if not any(i.count(j) > 1 for j in i if j.islower())])) print(len(paths)) \ No newline at end of file