CF253B Physics Practical

题目描述

有一天,Vasya 在做物理实验,测量电容。他按照老师的建议做了 $n$ 次测量,并把结果记在了笔记本上。之后他准备把实验结果拿给老师看,但他记起上次课程时,老师因为最大和最小结果相差超过两倍让他的朋友 Petya 重做了实验。Vasya 很懒,他不想重做实验,只想快点把任务做完回家打电脑游戏。所以他决定作弊:在把测量结果给老师前,他会擦掉其中的一些结果,使得剩下测量值中的最大值和最小值之比不会超过两倍。换言之,如果剩下的测量结果中最小值为 $x$,最大值为 $y$,那么必须满足 $y \leq 2x$。当然,为了避免老师怀疑,Vasya 想要尽量少地擦去笔记上的结果。 请帮帮 Vasya,计算他至少需要擦去多少个测量结果,才能使剩下的最大值与最小值之比不超过两倍。

输入格式

第一行包含一个整数 $n$($2 \leq n \leq 10^5$)—— 代表 Vasya 做了多少次测量。第二行包含 $n$ 个整数 $c_1, c_2, \ldots, c_n$($1 \leq c_i \leq 5000$)—— 代表每次测量的结果。第二行数字之间用一个空格分隔。

输出格式

输出一个整数——Vasya 至少需要擦掉的测量结果数量。

说明/提示

在第一个样例中,你可以擦去第 4 个和第 6 个测量结果(数值为 8 和 7)。剩下的最大值为 5,最小值为 3。或者你也可以擦去第 3 个和第 5 个结果(都是 3)。这样剩下的最大值为 8,最小值为 4。 由 ChatGPT 5 翻译