51 lines
853 B
Python
51 lines
853 B
Python
|
import sys
|
||
|
from pprint import pprint
|
||
|
from functools import reduce
|
||
|
|
||
|
maps = []
|
||
|
|
||
|
with open(sys.argv[1]) as file:
|
||
|
for line in file:
|
||
|
maps.append([int(x) for x in line.rstrip().split(' ')])
|
||
|
|
||
|
t = []
|
||
|
|
||
|
def calc(line):
|
||
|
global t
|
||
|
t.append(line)
|
||
|
print(line)
|
||
|
diff = []
|
||
|
for i in range(0,len(line)-1):
|
||
|
diff.append(line[i+1]-line[i])
|
||
|
if not all(v == 0 for v in diff):
|
||
|
last.append(diff[-1])
|
||
|
calc(diff)
|
||
|
else:
|
||
|
print(diff)
|
||
|
return 0
|
||
|
|
||
|
prev = 0
|
||
|
|
||
|
result = []
|
||
|
for mdx,m in enumerate(maps):
|
||
|
t = []
|
||
|
left = []
|
||
|
last = []
|
||
|
last.append(m[-1])
|
||
|
last.append(calc(m))
|
||
|
result.append(reduce(lambda x, y: x+y, last))
|
||
|
print(t)
|
||
|
pprint(last)
|
||
|
print(sum(result))
|
||
|
pprint(t)
|
||
|
|
||
|
tx = []
|
||
|
|
||
|
tmp = 0
|
||
|
for i in range(len(t)-1,-1,-1):
|
||
|
tx.append(t[i][0])
|
||
|
tmp = t[i][0] - tmp
|
||
|
|
||
|
print(tx)
|
||
|
print(tmp)
|