代码如下:
n, m = [int(i) for i in input().split(" ")]
data = [int(i) for i in input().split(" ")]
diff = []
for i in range(1,n):
diff.append(data[i-1] - data[i])
diff.sort()
ans = sum(diff[0:m-1]) + data[-1] - data[0]
print(ans)
运行后报错,段错误!
经过仔细排查发现是spilit()函数的问题,去掉里面的空格字符串(" ")就能成功运行。
原因,可能是测试数据里有多余的空格,split(" ")分割后出现空字符串,导致出现int("")的情况,所以报错。
a = "1 2 34 5 ".split(" ")
>>>['1', '2', '34', '5', '']
而spit()函数不加参数时默认删除所有空格,只保留有用信息。
a = "1 2 34 5 ".split()
>>>['1', '2', '34', '5']