Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ef f(curr, end):
- if curr > end:
- return 0
- if curr == end:
- return 1
- if curr < end:
- return f(curr + 1, end) + f(curr + 3, end) + f(curr * 2, end)
- print(f(3, 9) * f(9, 12) * f(12, 20))
- a = [0] * 100
- a[3] = 1
- for i in range(3, 9):
- if i + 1 <= 9:
- a[i + 1] += a[i]
- if i + 3 <= 9:
- a[i + 3] += a[i]
- if i * 2 <= 9:
- a[i * 2] += a[i]
- for i in range(9, 12):
- if i + 1 <= 12:
- a[i + 1] += a[i]
- if i + 3 <= 12:
- a[i + 3] += a[i]
- if i * 2 <= 12:
- a[i * 2] += a[i]
- for i in range(12, 20):
- if i + 1 <= 20:
- a[i + 1] += a[i]
- if i + 3 <= 20:
- a[i + 3] += a[i]
- if i * 2 <= 20:
- a[i * 2] += a[i]
- print(a[20])
Advertisement
Add Comment
Please, Sign In to add comment