试题 算法训练 粘木棍 python
内存限制:256.0MB Python时间限制:5.0s
问题描述
有N根木棍,需要将其粘贴成M个长木棍,使得最长的和最短的的差距最小。
输入格式
第一行两个整数N,M。
一行N个整数,表示木棍的长度。
输出格式
一行一个整数,表示最小的差距
样例输入
3 2
10 20 40
样例输出
10
数据规模和约定
N, M<=7`
试题 算法训练 粘木棍
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
问题描述
有N根木棍,需要将其粘贴成M个长木棍,使得最长的和最短的的差距最小。
输入格式
第一行两个整数N,M。
一行N个整数,表示木棍的长度。
输出格式
一行一个整数,表示最小的差距
样例输入
3 2
10 20 40
样例输出
10
数据规模和约定
N, M<=7
评测:
代码:
n,m=map(int,input().split())
list=map(int,input().split())
list=sorted(list)
a=[]
if n==m:
print(max(list)-min(list))
else:
for i in range(m):
a.append(max(list))
list.remove(max(list))
for i in range(n-m):
t=min(a)
a.remove(t)
t+=max(list)
a.append(t)
list.remove(max(list))
print(max(a)-min(a))