| 12345678910111213141516171819202122232425262728293031 |
- from numpy import array, zeros
- #m = array([[131, 673, 234, 103, 18 ],
- # [201, 96 , 342, 965, 150],
- # [630, 803, 746, 422, 111],
- # [537, 699, 497, 121, 956],
- # [805, 732, 524, 37 , 331]])
- f = open('matrix.txt', 'r')
- m = array([map(int, l.split(',')) for l in f.readlines()])
- f.close()
- def add(x, y):
- global m
- h, w = m.shape
- if x == w or y == h: return
- p = []
- if x: p.append(m[y, x - 1])
- if y: p.append(m[y - 1, x])
- m[y, x] += min(p)
- h, w = m.shape
- for i in range(w+h):
- for x in range(i + 1):
- y = i - x
- if (x or y) and x < w and y < h:
- add(x, y)
- print m[h - 1, w - 1]
|