diff options
author | Tomasz Kramkowski <tk@the-tk.com> | 2021-11-24 22:25:42 +0000 |
---|---|---|
committer | Tomasz Kramkowski <tk@the-tk.com> | 2021-11-24 22:25:42 +0000 |
commit | a7a6b86002b595bc167af72606b14c67ed1bdf8f (patch) | |
tree | bff94329cf969bd9df68d3b9782fee2107db56c2 /3/1.py | |
download | aoc2015-a7a6b86002b595bc167af72606b14c67ed1bdf8f.tar.gz aoc2015-a7a6b86002b595bc167af72606b14c67ed1bdf8f.tar.xz aoc2015-a7a6b86002b595bc167af72606b14c67ed1bdf8f.zip |
init commit
Diffstat (limited to '3/1.py')
-rw-r--r-- | 3/1.py | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -0,0 +1,10 @@ +from functools import reduce +from collections import defaultdict +d = defaultdict(int) +d[(0, 0)] = 1 +def reducer(state, move): + d, pos = state + npos = (pos[0] + move[0], pos[1] + move[1]) + d[npos] += 1 + return (d, (npos)) +print(len(reduce(reducer, ({'^': (0, 1), 'v': (0, -1), '>': (1, 0), '<': (-1, 0)}[c] for c in open('input').read().rstrip('\n')), (d, (0, 0)))[0])) |