京东笔试0418售卖股票
用python写的,为什么一直在18呢?求大佬们解答一下~谢谢,第二题有大佬做起没,也求解答~
def sellgupiao(n, m, values_test, q):
"""
返回最少损失的金额
:param n:股票数量
:param m:每天最多买m个股票
:param values:每只股票每天亏的金额
:param q:假如要卖出q个股票
:return:最小亏损金额
"""
values = []
values[:] = values_test[:]
values.sort()
values[:] = values[:q]
if q <= m:
return sum(values[:q])
ans = 0
count = 1
while q:
if q > m:
ans += count * (sum(values[-m:]))
values[:] = values[:-m]
else:
ans += count * sum(values)
break
count += 1
q = q - m
return ans
if __name__ == '__main__':
n = 5
m = 2
values = [1, 2, 3, 4, 5]
q = 4
res = sellgupiao(n, m, values, q)
print(res) 
查看13道真题和解析
