P15091 [UOI 2025 II Stage] Catamarans
题目描述
一个由 $n$ 人组成的小组计划去坐双体船游玩。
作为小组的领队,你的任务是预订双体船。你知道一艘双体船最多可以承载 $100$ 公斤的重量,并且你也知道小组中每个成员的体重。
你知道在你的小组中,一个人的体重可能是 $20$、$40$、$60$、$80$ 或 $100$ 公斤。
为了尽可能省钱,你决定编写一个程序来计算所需双体船的最少数量。
输入格式
- 第一行包含一个整数 $n$($1 \le n \le 1\,000$)——小组中的人数。
- 第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($a_i \in \{20, 40, 60, 80, 100\}$)——每个人的体重。
输出格式
输出一个整数——所需双体船的最少数量。
说明/提示
在第一个示例中,我们可以将前两个人安排在一艘双体船上,第三个人安排在第二艘,第四个人安排在第三艘。我们无法将所有人安排在两艘双体船上,因为第 $2$ 个人不能与第 $3$ 或第 $4$ 个人同船,第 $3$ 个人也不能与第 $4$ 个人同船。
在第二个示例中,我们可以将所有人安排在一艘双体船上,因为他们的总重量等于 $100$ 公斤,这意味着双体船可以承载他们。
翻译由 DeepSeek V3 完成