这个问题与我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 编译器读取我的输入太慢?但是在以同样的方式回答以前的问题时,我从来没有遇到过这个问题,我的意思是在设置输入方面。