1554: PL11 拿金币
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:16
解决:8
题目描述
有n堆金币,你每次可以选择任意一堆,并从中拿走1或2枚金币。
输入一个正整数n,以及每堆金币的数量,计算拿完n堆金币的最少次数。
例如:3堆金币分别为2,3,10,每堆拿完的次数分别是1,2,5,全部拿完最少是8次。
输入
第一行一个正整数,为列表元素个数n(2~20);
第二行,按字符串输入n个正整数(1~100),数字以空格隔开,表示每堆金币的数量。
提示:
s=int(input()) #输入一个字符串,赋值给s。
a=input().split(' ') #将字符串s按空格拆分,保存到列表a中。
lis=[int(i) for i in s] #将列表a的元素转换成正整数,保持到列表lis中。
第二行,按字符串输入n个正整数(1~100),数字以空格隔开,表示每堆金币的数量。
提示:
s=int(input()) #输入一个字符串,赋值给s。
a=input().split(' ') #将字符串s按空格拆分,保存到列表a中。
lis=[int(i) for i in s] #将列表a的元素转换成正整数,保持到列表lis中。
输出
一个整数,表示拿完n堆金币的最少次数。
样例输入 复制
3
2 3 10
样例输出 复制
8