为什么我的代码出现nzec错误?

时间:2013-03-24 09:01:32

标签: python python-2.7

为什么我在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

2 个答案:

答案 0 :(得分:0)

不是很容易回答,但你确定你不应该先读取所有输入,然后打印输出吗?根据我的理解,输入2 5 10,你的代码将首先读取2(测试用例的数量,然后5(人数)打印第一个结果,然后只读取下一个输入10.我不确定如果这有用,但很容易尝试。

答案 1 :(得分:0)

之前我已经完成了编程竞赛,你应该在产生任何输出之前读取所有输入,而不是交错两者。使用页面上提供的测试用例[2,5,12]运行代码

2
5
4
12
8

虽然它应该显示什么

2
5
12
4
8