第三题的状态转移方程真的没有问题吗?还是我太菜了? 我怎么觉得应该是 dp[i]=p[i−j]∗(dp[j]+v[i−j]) 呢? 但是这个转移方程 写的代码 tle 了啊。 哪个大佬解释一下? N = input() arr_p = list(map(float, input().split())) arr_a = list(map(float, input().split())) dp = [None for i in range(int(N))] dp[0] = arr_a[0] * arr_p[0] def getScore(n):     if dp[n] == None:         res = 0         cur = 1          while cur <= n:             res = max(res,                       getScore(n - cur) * arr_p[cur - 1] + arr_p[cur - 1] * arr_a[cur - 1])             cur += 1         return res     else:         return dp[n] output = getScore(int(N) - 1) print(round(output, 2))