problem81.py 472 B

12345678910111213141516171819202122232425
  1. from numpy import array, zeros
  2. m = array([l.split(',') for l in open('matrix.txt', 'r').readlines()],
  3. dtype=int)
  4. def add(x, y):
  5. global m
  6. h, w = m.shape
  7. if x == w or y == h: return
  8. p = []
  9. if x: p.append(m[y, x - 1])
  10. if y: p.append(m[y - 1, x])
  11. m[y, x] += min(p)
  12. h, w = m.shape
  13. for i in range(w+h):
  14. for x in range(i + 1):
  15. y = i - x
  16. if (x or y) and x < w and y < h:
  17. add(x, y)
  18. print m[h - 1, w - 1]