class Solution:
def fib(self, n: int) -> int:
mod = 10**9+7
if n == 0 :
return 0
if n == 1 :
return 1
dp = [0]*(n+1)
dp[0] = 0
dp[1] = 1
for i in range(2,n+1):
dp[i] = dp[i-1]+dp[i-2]
return dp[n]%mod
动态规划
取模是题目要求