腾讯第二题红花白花,超时统统会变成case通过率0%吗?

Python:如果不是想知道我的代码有啥问题,我自己在IDE上跑的还行啊

t,k = list(map(int,input().split()))
res = []
import math
def comb(n,m):
    return math.factorial(n)//(math.factorial(n-m)*math.factorial(m))
for i in range(t):
    a,b = list(map(int,input().split()))
    c = 0
    for j in range(a,b+1):
        d = j//k
        if d==0:
            c+=1
        else:
            for h in range(d+1):
                if h == 0:
                    e = 1
                elif j-h*k == 0:
                    e = 1
                else:
                    e = comb(j-h*k+h,h)
                c+=e
    res.append(int(c))
for m in range(len(res)):
    print(res[m])


#腾讯##笔试题目#
全部评论
求大佬指点一下~~
点赞 回复 分享
发布于 2019-09-01 22:21
可能是第一个case就超了吧
点赞 回复 分享
发布于 2019-09-01 22:24
组合数计算复杂度太高,我改成递归过了百分之10
点赞 回复 分享
发布于 2019-09-01 22:26
本地跑的ok,oj超时,到最后我才看到说要取模..在哪通知的..
点赞 回复 分享
发布于 2019-09-01 22:29
你把数取到10万本地跑试试,题目a,b上限是10万
点赞 回复 分享
发布于 2019-09-01 22:33

相关推荐

不愿透露姓名的神秘牛友
11-26 18:54
说等下个版本吧的发呆爱好者很贪睡:佬最后去了哪家呀
点赞 评论 收藏
分享
10-06 12:46
门头沟学院 Java
跨考小白:定时任务启动
点赞 评论 收藏
分享
面试摇了我吧:啊哈哈面试提前五个小时发,点击不能参加就是放弃
点赞 评论 收藏
分享
评论
点赞
3
分享
牛客网
牛客企业服务