problem53.py 360 B

12345678910111213141516171819202122
  1. #!/usr/bin/python
  2. from math import ceil
  3. prev = [1, 2]
  4. s = 0
  5. for n in range(2, 100):
  6. cur = [1]
  7. half = int(ceil(n / 2.))
  8. for r in range(1, half + 1):
  9. cur.append(prev[r - 1] + prev[r])
  10. if cur[-1] > 1000000:
  11. s += 2 if not n & 1 or r != half else 1
  12. if not n & 1:
  13. cur.append(cur[-1])
  14. prev = cur
  15. print s