Logo Universal Online Judge

UOJ

时间限制:2 s 空间限制:128 MB
统计

题目描述

给定一个闭区间 $[A,B]$ 和一个空的初始集合。每次操作,选定一个实数 $x$,并将 $0,x,2x,3x,4x,\cdots$ 中所有在闭区间 $[A,B]$ 内的实数加入集合(集合中重复的数将只保留一个)。

现在给定最终集合内的所有实数,求一种方案,使得在操作次数最少的情况下,初始集合在操作之后与输入集合相同。

输入格式

第一行,一个整数 $K$,表示最终集合中的实数个数。

第二行,两个整数 $A,B$,表示将加入闭区间 $[A,B]$ 内的实数。

接下来的 $K$ 行,每行一个小数点后不超过 $5$ 位的实数。保证这 $K$ 个实数单调递增。

输出格式

输出 $N$ 行,其中 $N$ 为该方案的操作次数。

接下来的 $N$ 行,每行一个实数。这 $N$ 个实数依次表示 $N$ 次操作所选定的实数。输出顺序不限。

如果有多种符合题意的方案,请输出操作次数最少的一种。如果有多种操作次数最小的方案,请输出任意一种。

样例 #1

样例输入 #1

4
1 2
1
1.4
1.5
2

样例输出 #1

0.5
0.7

样例 #2

样例输入 #2

5
10 25
12
13.5
18
20.25
24

样例输出 #2

6.0
6.75

提示

【样例 1 解释】

另外一种符合题意的方案是选定实数 $0.5$ 和 $1.4$。

【数据规模与约定】

对于 $50\%$ 的数据,所有输入的整数均为自然数。

对于 $100\%$ 的数据,$1 \le K \le 50$,$1 \le A \le B \le 10^6$。