2019: d08: ex2: add solution
This commit is contained in:
parent
8335513623
commit
b15c967b8d
32
2019/d08/ex2/ex2.py
Executable file
32
2019/d08/ex2/ex2.py
Executable file
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import sys
|
||||
|
||||
|
||||
def main() -> None:
|
||||
COLUMNS = 25
|
||||
ROWS = 6
|
||||
digits = [int(d) for d in str(int(sys.stdin.read()))]
|
||||
|
||||
assert len(digits) % (COLUMNS * ROWS) == 0 # Sanity check
|
||||
LAYERS = int(len(digits) / (COLUMNS * ROWS))
|
||||
|
||||
layers = [
|
||||
[digits.pop(0) for __ in range(COLUMNS) for __ in range(ROWS)]
|
||||
for __ in range(LAYERS)
|
||||
]
|
||||
|
||||
ans = []
|
||||
for pixels in zip(*(layer for layer in layers)):
|
||||
ans.append(next(color for color in pixels if color != 2))
|
||||
|
||||
print(
|
||||
"\n".join(
|
||||
"".join("█" if ans.pop(0) == 0 else " " for __ in range(COLUMNS))
|
||||
for __ in range(ROWS)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Reference in a new issue