Python 代码强制不接受我的输出,即使它看起来完全相同?
我试图完成一个关于代码力的低级问题,但即使我的解决方案通过了测试,它仍然会注册为错误。它一直在说“错误的输出格式意外的文件结尾-应为int32”。这是什么意思?问题可在Python 代码强制不接受我的输出,即使它看起来完全相同?,python,int,Python,Int,我试图完成一个关于代码力的低级问题,但即使我的解决方案通过了测试,它仍然会注册为错误。它一直在说“错误的输出格式意外的文件结尾-应为int32”。这是什么意思?问题可在 应该发生的是我解决了所有的测试,但这并没有发生。您的代码将在不同的输入下运行多次,因此您的代码必须能够读取各种输入。为了实现这一点,您必须从输入的来源处读取:stdin(标准输入) 在python中,您可以使用input()读取stdin,然后将这些值传递到restore\u数字(w,x,y,z) 但是,这些数字都在输入中的一行
应该发生的是我解决了所有的测试,但这并没有发生。您的代码将在不同的输入下运行多次,因此您的代码必须能够读取各种输入。为了实现这一点,您必须从输入的来源处读取:
stdin
(标准输入)
在python中,您可以使用input()
读取stdin
,然后将这些值传递到restore\u数字(w,x,y,z)
但是,这些数字都在输入中的一行上(例如,3 6 5 4
),因此您可以创建一个包含int
的map
,并从一行中获取输入,然后使用split()
使用默认分隔符(空格)分隔数字。然后将其转换为列表
,并分别访问每个数字,以进入还原数字(w,x,y,z)
功能
一种解决办法是:
#a+b = w
#a+c = x
#b+c = y
#a+b+c = z
def restore_numbers(w,x,y,z):
biggest = max(w,y,z,x)
if biggest - w > 0:
num = biggest-w
else:
num = biggest
if biggest - x > 0:
num1 = biggest-x
else:
num1 = biggest
if biggest -y > 0:
num2 = biggest-y
else:
num2 = biggest
if biggest - z > 0:
num3 = biggest-z
else:
num3 = biggest-z
arr = [num,num1,num2,num3]
arr.sort()
arr = arr[0:3]
s = [str(i) for i in arr]
res = (" ".join(s))
return res
nums = list(map(int, input().split()))
print(restore_numbers(nums[0],nums[1],nums[2],nums[3]))
现在,代码可以在不同的输入下运行多次。您的代码将在不同的输入下运行多次,因此您的代码必须能够读取各种输入。为了实现这一点,您必须从输入的来源处读取:
stdin
(标准输入)
在python中,您可以使用input()
读取stdin
,然后将这些值传递到restore\u数字(w,x,y,z)
但是,这些数字都在输入中的一行上(例如,3 6 5 4
),因此您可以创建一个包含int
的map
,并从一行中获取输入,然后使用split()
使用默认分隔符(空格)分隔数字。然后将其转换为列表
,并分别访问每个数字,以进入还原数字(w,x,y,z)
功能
一种解决办法是:
#a+b = w
#a+c = x
#b+c = y
#a+b+c = z
def restore_numbers(w,x,y,z):
biggest = max(w,y,z,x)
if biggest - w > 0:
num = biggest-w
else:
num = biggest
if biggest - x > 0:
num1 = biggest-x
else:
num1 = biggest
if biggest -y > 0:
num2 = biggest-y
else:
num2 = biggest
if biggest - z > 0:
num3 = biggest-z
else:
num3 = biggest-z
arr = [num,num1,num2,num3]
arr.sort()
arr = arr[0:3]
s = [str(i) for i in arr]
res = (" ".join(s))
return res
nums = list(map(int, input().split()))
print(restore_numbers(nums[0],nums[1],nums[2],nums[3]))
现在,代码可以跨各种输入运行多次。如果不知道问题是什么,就无能为力。如果这是您提交的内容(),则需要从stdin中读取值。什么是stdin?请参阅以下内容:。您还可以查看其他参赛者的提交资料以获取一些灵感(剧透:)在不知道问题是什么的情况下无法帮助您。如果这是您的提交资料(),则您需要从stdin中读取值。什么是stdin?请参阅:。你也可以看看其他参赛者的参赛作品来获得一些灵感(剧透:)