【python学习笔记】几道笔试题(2)

本文记录了两道Python笔试题目,分别是关于选举策略的数学问题和排列组合问题。第一题涉及最小争取选票策略,第二题讨论了五人重新排队的组合数,第三题探讨了不同颜色气球的剪法。分析了原解法的问题并提出了改进思路。
摘要由CSDN通过智能技术生成

最近要申暑期实习,在牛客、赛码上做了一些真题,在这里将其中一部分错题做个整理。

第一题:

小东和其他小朋友正在玩一个关于选举的游戏。选举是通过投票的方式进行的,得票最多的人将获胜。

小东是编号为1的候选者,此外还有其他的候选者参加选举。根据初步的调查情况,所有准备投票的小朋友都有一定的投票倾向性,小东如果要获得胜利,必须争取部分准备为其他候选人投票的小朋友。由于小东的资源较为有限,她希望用最小的代价赢得胜利,请你帮忙计算她最少需要争取的选票数。

输入:

输入有若干组,每组包含两行,第一行为一个正整数n(2<=n<=100),表示候选者的数量,第二行为每个候选人预期得到的选票数,以空格分开,每人的预期得票数在1到1000之间(包含1和1000)。

经过小东的争取后,可能出现候选人得票数为0或超过1000的情况。

输出:

对每组测试数据,单独输出一行,内容为小东最少需要争取的选票数。

样例输入:

5
5 1 11 2 8
4
1 8 8 8
2
7 6

样例输出:

4
6
0

尝试:

while True:
    n = int(raw_input())
    s = map(int, raw_input().split())
    s0 = 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值