6331: 三体

Memory Limit:256 MB Time Limit:2.000 S
Judge Style:Text Compare Creator:
Submit:37 Solved:0

Description

三体问题最早由牛顿提出,是指三个质量、初始位置和初始速度都是任意的可视为质点的天体在万有引力的相互作用下的运动规律。
进而延伸出N体问题:在三维空间中给定N个质点,如果在它们之间只有万有引力的作用,那么在给定初始位置和速度的条件下,它们会有怎样的运动空间?
地球文明在三体问题上还不能精确求解,只有几种特殊情况研究出了成果。但在遥远的R星,科学家们却已发现N体问题的稳定性特质:即每对天体的质量差如果是2的整数次方,则运行是稳定的。并且符合这样要求的天体数量越多,运行越稳定。
现给出n个不同质量的天体,第i个天体的质量为Xi。请你从给定的天体中选择尽可能多的天体,使得每对天体之间的质量差都是2的整数次方。
换句话说,你必须选择最大可能数量的质点Xi1,Xi2,...,Xim。对于每一对Xij ,Xik,都有|Xij-Xik|=2d,其中d是某个非负的整数(每对点不一定相同)。

Input

第一行,一个整数n ( 2 ≤ n ≤ 2×105 ),表示天体的数量。
第二行,n个不同整数X1, X2, ... , Xn(0 < Xi ≤ 4×109 ),表示天体的质量。

Output

第一行,整数m,表示满足上述条件的可能存在的天体的最大数量。
第二行,m个整数,表示所选择的天体的质量,按从小到大的顺序输出。
如果有多个答案,输出字典序最小的一个(即要求第一个质量最小,相同按第二个质量最小的输出,……,以此类推)。数据保证至少有两个天体满足条件。

Sample Input Copy

6
3 5 8 7 10 12

Sample Output Copy

3
3 5 7

HINT

【样例解释】
满足每对质量差都是2d且数量最多的天体有两组:{3,5,7}和{8,10,12}。
{3,5,7},因为 |7-3|=4=22, |7-5|=2=21和|3-5|=2=21。
{8,10,12}可自行计算。
前者的字典序更小。在这个例子中你不可能找到有更多的天体满足所需属性。
【数据规模】
10%的数据,n ≤ 6;
20%的数据,n ≤ 1000;
100%的数据,2 ≤ n ≤ 2×105,0 < Xi ≤ 4×109。