题目描述
给定一个闭区间 $[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$。