summaryrefslogtreecommitdiff
path: root/8a.py
diff options
context:
space:
mode:
Diffstat (limited to '8a.py')
-rwxr-xr-x8a.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/8a.py b/8a.py
new file mode 100755
index 0000000..3ba44b0
--- /dev/null
+++ b/8a.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+
+import sys
+
+WID=50
+HEI=6
+
+screen=[[0]*WID for _ in range(HEI)]
+
+for line in sys.stdin:
+ line=line.split(" ")
+ if line[0]=="rect":
+ w,h=[int(x) for x in line[1].split("x")]
+ for y in range(h):
+ screen[y][:w]=[1]*w
+ elif line[0]=="rotate" and line[1]=="row":
+ y=int(line[2][2:])
+ off=int(line[4])%WID
+ part=screen[y][:-off]
+ screen[y][:off]=screen[y][-off:]
+ screen[y][off:]=part
+ elif line[0]=="rotate" and line[1]=="column":
+ x=int(line[2][2:])
+ off=int(line[4])%HEI
+ part=[row[x] for row in screen[:-off]]
+ for y in range(off):
+ screen[y][x]=screen[-off+y][x]
+ for y in range(len(part)):
+ screen[off+y][x]=part[y]
+
+print(sum(map(sum,screen)))