用dp的方法。 [t,k] = list(map(int,input().split())) maxn = int(1e5 + 100) dp = [[0]*2 for _ in range(maxn)] dp[1][1] = 1 dp[k][0] = 1 ans = [0]*maxn for i in range(1,100000):     dp[i+k][0] += (dp[i][0] + dp[i][1])     dp[i+1][1] += (dp[i][0] + dp[i][1])     ans[i] = ans[i-1] + dp[i][0] + dp[i][1] while t:     [a,b] = list(map(int,input().split()))     print(ans[b] - ans[a-1])     t -= 1 最后不知道过了多少,快要交卷了
点赞 1

相关推荐

不愿透露姓名的神秘牛友
07-09 12:23
转人工😡
门口唉提是地铁杀:五次握手了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:10
直接上图
牛客13578115...:改得一般,不值80
点赞 评论 收藏
分享
06-25 09:33
厦门大学 Java
程序员饺子:现在日常估计没啥hc了,等到八月多估计就慢慢有了。双九✌🏻不用焦虑的
投递快手等公司7个岗位
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务