返回首页 返回题库

平均分配

C++ 中等 GESP五级真题 #贪心#排序

题目描述

题面描述

小A有件物品,小B和小C想从小A手上买走这些物品。对于第件物品,小B会以的价格购买,而小C会以的价格购买。为了平均分配这件物品,小A决定小B和小C各自只能买走恰好件物品。你能帮小A求出他卖出这件物品所能获得的最大收入吗?

输入格式

第一行,一个正整数。

第二行,个整数。

第三行,个整数。

输出格式

一行,一个整数,表示答案。

样例1

输入:

3
1 3 5 6 8 10
2 4 6 7 9 11

输出:

36

样例2

输入:

2
6 7 9 9
1 2 10 12

输出:

35

数据范围

对于20%的测试点,保证。

对于另外20%的测试点,保证,。

对于所有测试点,保证,,。

时间限制

1.0 s

内存限制

512.0 MB

💡 查看提示(先自己想一想再看)
考察贪心算法与排序的结合。解题思路:先假设所有物品都卖给小B,得到基础收入;再计算每个物品卖给小C比卖给小B多赚的差值,将差值从大到小排序,选择前n个差值加到基础收入中,即为最大总收入。注意数值范围较大,需要使用长整型避免溢出。
⚙ 开始做这道题 0 人做过 · 0 收藏 · 4 浏览

讨论(0)