2019-09-22 10:33:18 +02:00

51 lines
962 B
Python

#!/usr/bin/python3
from timeit import default_timer
def sum_triangle(triang, n, i, j, sum_):
global max_
if i == n:
if sum_ > max_:
max_ = sum_
return max_
sum_triangle(triang, n, i+1, j, sum_+triang[i][j])
sum_triangle(triang, n, i+1, j+1, sum_+triang[i][j])
def main():
global max_
start = default_timer()
try:
fp = open('triang.txt', 'r')
except:
print('Error while opening file {}'.format('triang.txt'))
exit(1)
triang = list()
for line in fp:
triang.append(line.strip('\n').split())
fp.close()
l = len(triang)
for i in range(l):
triang[i] = list(map(int, triang[i]))
max_ = 0
sum_triangle(triang, 15, 0, 0, 0)
end = default_timer()
print('Project Euler, Problem 18')
print('Answer: {}'.format(max_))
print('Elapsed time: {:.9f} seconds'.format(end - start))
if __name__ == '__main__':
main()