#4472. 救生艇

救生艇

题目描述

给定数组 peoplepeople 。people[i]people[i]表示第 ii 个人的体重 ,船的数量不限,每艘船可以承载的最大重量为 limitlimit

每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limitlimit

输出 承载所有人所需的最小船数 。

输入格式

第一行,两个空格隔开的整数,分别表示总人数 nn 和每艘船可以承载的最大重量 limitlimit;第二行 nn 空格隔开的整数,表示每个人的体重。

输出格式

一行一个整数,表示承载所有人所需的最小船数。

样例

样例 1:

2 3
1 2
1

解释:1 艘船载 (1, 2)

样例 2:

4 3
3 2 2 1
3

解释:3 艘船分别载 (1, 2), (2) 和 (3)

样例 3:

4 5
3 5 3 4
4

解释:4 艘船分别载 (3), (3), (4), (5)

提示:

  • 1<=n<=51041 <= n <= 5 * 10^4
  • 1<=people[i]<=limit<=31041 <= people[i] <= limit <= 3 * 10^4
}