蓝桥杯-python第五天(谈判)

题目:

蓝桥杯-python第五天(谈判)_第1张图片

解题思路: 

首先看到这个题,想到了贪心,就是说先找到最小的两个,再两个两个相加,才能求出最小的花费,那么我们肯定要排序,使用sort函数来排序,其他就是基本的语法

输入:

4
9 1 3 5

输出:

31

我的解答:

import os
import sys
p=0
q=0
n=int(input())
num = [int(n) for n in input().split()]
num.sort()
# print(num)
for i in num:
    a=int(i)
    p+=a
    q+=p
    # print(p)
    # print(q)

print(q-num[0])

用n来获取用户输入的数字,代表部落个数,再按个数输入每个部落的人数,并且放到数组里面,对里面的人数从小到大排序,p是代表两个部落的人数之和,q用的钱,最后由于最少的人数已经加进去了,所以要减去最少的部落人数,就是最少的花费

结果:

蓝桥杯-python第五天(谈判)_第2张图片

 以上就是今天的分享,继续努力!

你可能感兴趣的:(笔记,蓝桥杯,算法,python,开发语言,pycharm)