测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A38873. (注.input()输入函数的括号中不允许添加任何信息)编程实现某商店搞促销活动“买二免一”,活动内容如下:每买两件商品,结算时只收取其中价格高的商品费用,另一件商品不收取费用(相同价格只收取一件商品费用)。小明选购了N件商品(2<=N<=1000,N为偶数),且已知每件商品的价格。请帮助小明,把商品进行两两组合,使得购买花费最少,并输出总费用。例如:N=6,6件商品价格分别为32、56…

填空题 困难

题目描述

题目描述

(注.input()输入函数的括号中不允许添加任何信息)

编程实现

某商店搞促销活动“买二免一”,活动内容如下:

每买两件商品,结算时只收取其中价格高的商品费用,另一件商品不收取费用(相同价格只收取一件商品费用)。

小明选购了N件商品(2<=N<=1000,N为偶数),且已知每件商品的价格。请帮助小明,把商品进行两两组合,使得购买花费最少,并输出总费用。

例如:

N=6,6件商品价格分别为32、56、92、45、12、98,共结算3次。

当98与92组合,56与45组合,32与12组合时,花费最少,总费用为186(186=98+56+32)。

输入描述

第一行输入一个正整数N(2≤N≤1000,N为偶数),表示小明选购的商品数量

第二行输入N个正整数(1≤正整数≤100),表示每件商品的价格,正整数之间以一个英文逗号隔开

输出描述

输出一个整数,表示购买N件商品最少需要花费的钱数

样例输入

6

32,56,92,45,12,98

样例输出

186

参考答案

n=int(input()) ls=list(map(int,input().split(','))) ls=sorted(ls,reverse=True) s=0 for i in range(0,n,2): s+=ls[i] print(s)
上一题 下一题