def answer(l):
# your code here
l1=[]
l2=[]
l0=[]
l.sort(reverse=True)
for i in l:
if i%3==0:
l0.append(i)
elif i%3==1:
l1.append(i)
elif i%3==2:
l2.append(i)
if(sum(l)%3==0):
return int(''.join(str(e) for e in l))
elif sum(l)%3==1:
if l1!=[]:
l1.pop()
else:
if len(l2)>=2:
l2.pop()
l2.pop()
else:
return 0
elif sum(l)%3==2:
if l2!=[]:
l2.pop()
else:
if len(l1)>=2:
l1.pop()
l1.pop()
else:
return 0
l1.extend(l2)
l1.extend(l0)
l1.sort(reverse=True)
return int(''.join(str(e) for e in l1))
l1列表需要转换为字符串然后转换为int,但是我得到了值错误。我能知道为什么吗? 输入:(int list)[3,1,4,1] 输出:(int)4331
答案 0 :(得分:3)
l1
的某些元素的字符串表示形式与^[0-9]+$
不匹配。
这就是为什么你得到ValueError
。