每当我尝试 运行 代码时,它会说 运行time error.How 我可以修复它吗?(Hackerrank)

Whenever I try run code it says runtime error.How can I fix it.(Hackerrank)

我是新来的,Hackerrank.I 正在尝试解决简单的数组求和问题:

Given an array of integers, find the sum of its elements.

For example, if the array , , so return .

Function Description

Complete the simpleArraySum function in the editor below. It must return the sum of the array elements as an integer.

simpleArraySum has the following parameter(s):

ar: an array of integers
Input Format

The first line contains an integer, , denoting the size of the array.
The second line contains  space-separated integers representing the array's elements.

Constraints


Output Format

Print the sum of the array's elements as a single integer.

我正在尝试寻找解决方案,但找不到解决方案,所以 far.It 在 jupyter 上工作 notebook.It 说:

Traceback (most recent call last):
  File "Solution.py", line 34, in <module>
    result = simpleArraySum(ar)
  File "Solution.py", line 13, in simpleArraySum
    amount=int(input())
EOFError: EOF when reading a line

在输出按钮上显示 'no response on stdout'。这是我的代码:

def simpleArraySum(ar):
    #
    # Write your code here.
    #
    amount=int(input())

    nums=list(map(int,input().split()))

    sums=0

    for i in nums:

        sums+=i

    print(sums)

你可以这样做;

def sum_array(arr):
    total = 0
    for i in arr:
        total += i
    return total

您的代码存在一些问题。

  • 您希望将数组传递给函数,但您还希望用户输入值。
  • 您将输入转换为整数,但之后拆分输入。

请注意,有很多解决此问题的方法无需编写您自己的自定义函数。

这应该可以正常工作。只需复制并粘贴此代码即可开始:

def simpleArraySum(ar):
    #
    # Write your code here.
    #
    sums=0
    for i in nums:
        sums+=i
    return sums

amount = int(input())
nums = list(map(int,input().split()))
print(simpleArraySum(nums))

我什么都没做,只是读取了函数外的输入

这对你来说应该很好用:

amount=int(input())
nums=list(map(int,input().split()))
sums=0
for i in nums:
    sums+=i
print(sums)

问题你只有一个问题:
1. 你只需要对给定数组的所有元素求和,只是求和,你不需要读取输入User.That是我在你的代码中更改的内容,然后在我修改后删除所有内容并编写代码,应该可以工作,一切都会好的。