在传说中的江湖中,各大帮派要选武林盟主了,如果龙飞能得到超过一半的帮派的支持就可以当选,而每个帮派的结果又是由该帮派帮众投票产生的,如果某个帮派超过一半的帮众支持龙飞,则他将赢得该帮派的支持。现在给出每个帮派的帮众人数,请问龙飞至少需要赢得多少人的支持才可能当选武林盟主?
输入格式:
测试数据有多组,处理到文件尾。每组测试先输入一个整数n(1≤n≤20),表示帮派数,然后输入n个正整数,表示每个帮派的帮众人数a(0<a<=100)
输出格式:
对于每组数据输出一行,表示龙飞当选武林盟主至少需要赢得支持的帮众人数。
输入样例:
3 5 7 5
4 6 6 7 5
输出样例:
6
11
代码:
try:while True:n, *lst = map(int, input().split())i = 0result = 0lst.sort() # 从小到大排序就能保证最后的支持帮众人数最少while i <= n//2: # 帮派超过半数result += (int(lst[i]//2) + 1) # 每个帮派的人数超过半数i += 1print(result)
except EOFError:pass