Day 12 (switched to dict.get())
This commit is contained in:
@@ -4,14 +4,12 @@ pos = 0
|
||||
direction = 1
|
||||
targets = {"E": 1, "N": 1j, "W": -1, "S": -1j}
|
||||
angles = {"L": 1, "R": -1}
|
||||
forward = {"F": 1}
|
||||
|
||||
for cmd, num in lines:
|
||||
if cmd in targets:
|
||||
pos += targets[cmd] * num
|
||||
elif cmd in angles:
|
||||
times = angles[cmd] * num / 90
|
||||
pos += targets.get(cmd, 0) * num
|
||||
times = angles.get(cmd, 0) * num / 90
|
||||
direction = direction * 1j ** times
|
||||
else:
|
||||
pos += direction * num
|
||||
pos += forward.get(cmd, 0) * direction * num
|
||||
|
||||
print(int(abs(pos.real) + abs(pos.imag)))
|
||||
|
||||
@@ -4,14 +4,12 @@ pos = 0
|
||||
direction = 10 + 1j
|
||||
targets = {"E": 1, "N": 1j, "W": -1, "S": -1j}
|
||||
angles = {"L": 1, "R": -1}
|
||||
forward = {"F": 1}
|
||||
|
||||
for cmd, num in lines:
|
||||
if cmd in targets:
|
||||
direction += targets[cmd] * num
|
||||
elif cmd in angles:
|
||||
times = angles[cmd] * num / 90
|
||||
direction += targets.get(cmd, 0) * num
|
||||
times = angles.get(cmd, 0) * num / 90
|
||||
direction = direction * 1j ** times
|
||||
else:
|
||||
pos += direction * num
|
||||
pos += forward.get(cmd, 0) * direction * num
|
||||
|
||||
print(int(abs(pos.real) + abs(pos.imag)))
|
||||
|
||||
Reference in New Issue
Block a user