| Name | Language | Tokens Sum | Tokens Part 1 | Tokens Part 2 | Last change | |
|---|---|---|---|---|---|---|
| 1 | Python | 10184 | 184 | - | 23 months ago |
importsyscells={ complex(i,j):cforj,rinenumerate(sys.stdin)fori,cinenumerate(r.strip())}visited={}beams=[(-1,1)]whilebeams: pos,dir=beams.pop() whiledirnotinvisited.setdefault(pos,[]): visited[pos].append(dir) pos+=dir ifposnotincells: break c=cells[pos] rotated=1j*dir.conjugate() ifc=="|": dir=1j beams.append((pos,-1j)) elifc=="-": dir=1 beams.append((pos,-1)) elifc=="/": dir=-rotated elifc=="\\": dir=rotatedprint(len(visited)-1)