腾讯第二题红花白花,超时统统会变成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])


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

相关推荐

点赞 评论 收藏
分享
Twilight_m...:经典我朋友XXXX起手,这是那种经典的不知道目前行情搁那儿胡编乱造瞎指导的中年人,不用理这种**
点赞 评论 收藏
分享
07-09 18:28
门头沟学院 Java
写着提前批,结果还要实习4个月以上???
程序员牛肉:这种不用看,直接投了,面试的时候问对应的HR就行。有可能他们是直接复制的暑期实习的模板。
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务