#4523. Python L11 拿金币

Python L11 拿金币

Python L11 拿金币(30分)

题目名称:拿金币

题目描述:

有n堆金币,你每次可以选择任意一堆,并从这堆金币中拿走其中的1枚或者2枚金币。

输入一个正整数n,以及每堆金币的数量。计算拿完n堆金币的最少次数。

例如:3堆金币的数量分别为2,3,10,你拿完这3堆金币的次数分别是1,2,5,拿完3堆金币的最少次数是8。

输入:

第一行一个正整数n,为金币的堆数(2<=n<=20);

第二行,按字符串形式输入n个正整数(大小在1~20范围内),相邻两个正整数用一个空格分隔,依次表示每堆金币的数量。

提示:

s = input() #输入一个字符串,赋值给s

a = s.split(' ') #将字符串s按空格拆分,保存到列表a中

lis = [int(i) for i in a] #将列表a的元素转换成整数,保存到列表lis中

输出:

一个整数,表示拿完n堆金币的最少次数。

输入样例:

3

2 3 10

输出样例:

8

Limitation

1s, 1024KiB for each test case.