#10327. 摩天轮 CSES
摩天轮 CSES
摩天轮
任务:
有 n
个孩子想要乘坐摩天轮,你的任务是为每个孩子找到一个吊舱。每个吊舱可以容纳一个或两个孩子,并且吊舱中的总重量不得超过 x
。你知道每个孩子的体重。请计算所需的最小吊舱数量。
输入:
- 第一行包含两个整数
n
和x
:分别表示孩子的数量和吊舱的最大承载重量。 - 第二行包含
n
个整数p_1, p_2, ..., p_n
:每个孩子的体重。
输出:
- 输出一个整数:所需的最小吊舱数量。
约束:
1 ≤ n ≤ 2 * 10^5
1 ≤ x ≤ 10^9
1 ≤ p_i ≤ x
示例:
输入:
4 10
7 2 3 9
输出:
3
说明:
- 排序后的体重数组为
[2, 3, 7, 9]
。 - 最轻和最重的孩子体重和为
2 + 9 = 11
,超出了最大承载重量,所以必须单独为9
重的孩子提供一个吊舱,剩下2, 3, 7
。 - 然后将
2
和7
配对,剩下3
,需要一个吊舱。 - 所以需要的吊舱数量是 3。
统计
相关
在下列比赛中: