P12257 [蓝桥杯 2024 国 Java B] 分组

题目描述

小明班上有 $n$ 名同学,老师准备按上一次考试的分数对同学们进行分组,第 $i$ 名同学的分数为 $a_i$。老师希望把同学们分为尽可能多的小组,且满足每个小组中的同学分数的最大值至少是最小值的两倍。请问最多能分出多少个小组?如果把所有人分到同一组都不能满足条件则输出 $0$。

输入格式

输入共 $2$ 行。 第一行为一个正整数 $n$。 第二行为 $n$ 个由空格分开的正整数表示 $a_1, a_2, \ldots, a_n$。

输出格式

输出共 $1$ 行,一个整数表示答案。

说明/提示

### 样例说明 其中一种分组方式:第一组 $\{a_4, a_1\} = \{1, 3\}$,第二组 $\{a_3, a_2\} = \{2, 5\}$,第三组 $\{a_6, a_5\} = \{2, 4\}$。 ### 评测用例规模与约定 - 对于 $20\%$ 的评测用例,保证 $n \leq 10$。 - 对于 $100\%$ 的评测用例,保证 $1\leq n \leq 10^5$,$0 < a_i \leq 10^8$。