以下是问题:https://www.codechef.com/problems/BUY1GET1
当我提交时,我在CodeChef上遇到运行时错误(NZEC)。
t=int(input())
while(t):
n=input()
#n=list(n)
a=[0]*53
cost=0
for i in n:
if(ord(i)>=65 and ord(i)<=90):
x=ord(i)-64
a[x]=a[x]+1
else:
x=ord(i)-70
a[x]=a[x]+1
#print(a)
for i in range(1,53):
if(a[i]>0):
cost=cost+(a[i]//2+a[i]%2)
print(cost)
t=t-1
它在我的Python Shell上运行正常。 问题是什么?请帮助!
答案 0 :(得分:0)
问题出在else
块上
您确定ord(i)
介于70
和(70+53-1)
之间吗?
尝试编写elif ord(i) >=70 and ord(i) < 123
而不是else
,然后查看问题是否仍然存在。