Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def main():
- from sys import stdin
- tokens = map(int, stdin.read().split())
- last_row = next(tokens)
- numbers = list(tokens)
- print('Total rows:', last_row)
- def path_sum(i, row, acc):
- if row == last_row - 1:
- return numbers[i] + acc
- v = numbers[i]
- left_child_index = i + row + 1
- sum_left = path_sum(left_child_index, row + 1, v + acc)
- sum_right = path_sum(left_child_index + 1, row + 1, v + acc)
- return max(sum_left, sum_right)
- print('answer=%d' % path_sum(0, 0, 0))
- main()
- # Input:
- # 15
- # 75
- # 95 64
- # 17 47 82
- # 18 35 87 10
- # 20 04 82 47 65
- # 19 01 23 75 03 34
- # 88 02 77 73 07 63 67
- # 99 65 04 28 06 16 70 92
- # 41 41 26 56 83 40 80 70 33
- # 41 48 72 33 47 32 37 16 94 29
- # 53 71 44 65 25 43 91 52 97 51 14
- # 70 11 33 28 77 73 17 78 39 68 17 57
- # 91 71 52 38 17 14 91 43 58 50 27 29 48
- # 63 66 04 68 89 53 67 30 73 16 69 87 40 31
- # 04 62 98 27 23 09 70 98 73 93 38 53 60 04 23
- #
- # Output:
- # Total rows: 15
- # answer=1074
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement