为什么我在codechef上的代码上出现nzec错误?????请帮忙 问题链接是http://www.codechef.com/problems/DCE05 我的解决方案是
maxn = 10**9
i = 0
lis = [1]
while(maxn !=0):
lis.append(2*lis[i])
i = i+1
maxn = maxn/2
t = int(input())
for y in range(t):
n = int(input())
if n == 0:
print n
continue
for j in range(len(lis)):
if n > lis[j]:
continue
else:
if lis[j]== n:
print lis[j]
else:
print lis[j-1]
break
答案 0 :(得分:0)
不是很容易回答,但你确定你不应该先读取所有输入,然后打印输出吗?根据我的理解,输入2 5 10,你的代码将首先读取2(测试用例的数量,然后5(人数)打印第一个结果,然后只读取下一个输入10.我不确定如果这有用,但很容易尝试。
答案 1 :(得分:0)
之前我已经完成了编程竞赛,你应该在产生任何输出之前读取所有输入,而不是交错两者。使用页面上提供的测试用例[2,5,12]运行代码
2
5
4
12
8
虽然它应该显示什么
2
5
12
4
8