首页 > 解决方案 > 当我提交代码时,当计时时间为 0 秒时,为什么我在 CodeChef 上遇到时间限制超出错误?

问题描述

这个问题与我Time Limit Exceeded Error在 Codechef 上遇到的代码有关——尽管计时时间是 0 秒

这是我要解决的问题: https ://www.codechef.com/SEPT21C/problems/MNDIGSUM

在此处输入图像描述

这是我的代码:

Q = int(input())
res = float("inf")
curr = float("inf")
answer = float("inf")

#converts any positive integer 'temp' with base 10 into its equivalent in base 'base'
def numberToBase(n, b,stopper):
    counter = 0
    if n == 0:
        return [0]
    digits = []
    while n:
        digits.append(int(n % b))
        counter += int(n % b)
        n //= b
        if counter>stopper:
            break
    return sum(digits[::-1])

for i in range(Q):
    answer = float("inf")
    res = float("inf")
    curr = float("inf")
    count = float("inf")
    (n,l,r) = list(map(int,input().split()))
    for j in range(l,r+1):
        count = min(count,curr)
        curr = numberToBase(n,j,curr)
        if curr<res:
            answer = j
        res = min(res,curr)
    print(answer)

我是否遗漏了什么——因为当我在 PyCharm 中运行我的代码并在网站上运行基本的三个测试时,它会产生与预期相同的输出!

我查看了许多论坛,并提到 CodeChef 编译器读取我的输入太慢?但是在以同样的方式回答以前的问题时,我从来没有遇到过这个问题,我的意思是在设置输入方面。

标签: pythontime-limiting

解决方案


推荐阅读