即使看起来完全一样,Codeforce也不接受我的输出? - python

我正在尝试完成有关代码强制的低级问题,但是即使我的解决方案通过了测试,它仍然会注册为错误。它总是说“错误的输出格式文件末尾-预期为int32”。这是什么意思?问题可以在https://codeforces.com/contest/1154/problem/A上找到

#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 
print(restore_numbers(3,6,5,4))

应该发生的事情是我解决了所有测试,但是这没有发生。

参考方案

您的代码将在不同的输入下运行多次,因此您的代码必须适应于能够读取各种输入的情况。为了实现这一点,您必须阅读输入的来源:stdin(标准输入)

在python中,您可以使用input()stdin读取,然后将这些值传递到您的restore_numbers(w,x,y,z)

但是,这些数字全部在输入中的一行上(例如3 6 5 4),因此您可以创建一个保存mapint并从一行中获取输入,并使用split()使用默认定界符(空格)。然后,将其转换为list并分别访问每个数字以传递至restore_numbers(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]))

现在,代码可以跨各种输入多次运行。

Python sqlite3数据库已锁定 - python

我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…

Python pytz时区函数返回的时区为9分钟 - python

由于某些原因,我无法从以下代码中找出原因:>>> from pytz import timezone >>> timezone('America/Chicago') 我得到:<DstTzInfo 'America/Chicago' LMT-1 day, 18:09:00 STD…

用大写字母拆分字符串,但忽略AAA Python Regex - python

我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…

如何打印浮点数的全精度[Python] - python

我编写了以下函数,其中传递了x,y的值:def check(x, y): print(type(x)) print(type(y)) print(x) print(y) if x == y: print "Yes" 现在当我打电话check(1.00000000000000001, 1.0000000000000002)它正在打印:<…

Python:如何根据另一列元素明智地查找一列中的空单元格计数? - python

df = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice','Jane', 'Alice','Bob', 'Alice'], 'income…