#P1049. 梦世界魔法详解

梦世界魔法详解

题目背景

在上次打卡舞萌之后,小铃深感不会魔法的不方便之处。因此即使她不是魔女,小铃也想学习一些魔法的基础知识和一些以魔导水晶为能量来源的简单魔法。

梦世界的魔法基础是 novia 因子,一部分人类拥有天生的产生 novia 因子的能力,这些人被称为魔女。novia 因子是一种蕴含着相当高能量的粒子,但是没有人能完全释放它的能量。利用它的能量的方式也很独特:这被称作魔法。

题目描述

小铃正在学习的是火球术,现在她已经利用魔导水晶里的魔力搓出了 nn 个火球,其中第 ii 个火球中蕴含的魔力为 aia _ i。小铃现在想让火球们看起来更帅,因此小铃决定合并一些火球。

但是,小铃毕竟是初学者,还不能自如的操控魔力,现在她只学会了一种合并方式:选择两个火球 i,ji, j,使得 aia _ iaja _ j 的差恰好是 11,此时小铃才能把这两个火球合并成一个魔力为 ai+aja _ i + a _ j 的火球。

小铃觉得,比较两组火球 a=[a1,a2,,an]a = [a _ 1, a _ 2, \ldots, a _ n]b=[b1,b2,,bm]b = [b _ 1, b _ 2, \ldots, b _ m](其中 aia _ i 表示第 11 组的第 ii 个火球蕴含的魔力,bib _ i 表示第 22 组的第 ii 个火球蕴含的魔力)时,要首先取出其中的最大值进行比较:如果某组的最大值大于另一组,那么最大值大的那组火球就会比较帅。如果最大值相同,则两组同时删除一个最大值,然后重复比较。如果两组同时为空,那么两组火球一样帅。如果一组空了,另一组还有火球,那么另一组火球比较帅。

小铃想知道,她能合并产生的最帅的一组火球的魔力都是多少。

输入格式

第一行一个正整数 nn,表示火球的数量。

接下来一行 nn 个正整数 a1,a2,,ana _ 1, a _ 2, \ldots, a _ n,表示火球的魔力。

输出格式

第一行输出一个正整数 rr 表示小铃能合并产生的最帅的一组火球的个数。

第二行 rr 个正整数,表示小铃能合并产生的最帅的一组火球的魔力都是哪些。注意,要按照从小到大的顺序输出。

样例

样例输入 1

5
3 1 1 4 2 

样例输出 1

3
1 1 9

样例输入/输出 2

见下发文件 magic2.in/ans。该样例满足测试点 898 \sim 9 的限制。

样例输入/输出 3

见下发文件 magic3.in/ans。该样例满足测试点 121312 \sim 13 的限制。

样例输入/输出 3

见下发文件 magic4.in/ans。该样例满足测试点 192019 \sim 20 的限制。

数据范围与提示

本题共 2020 个测试点,每个测试点 55 分。

测试点编号 特殊性质
151 \sim 5 n10n \le 10ai10a _ i \le 10
676 \sim 7 ai4a _ i \le 4
898 \sim 9 ai10a _ i \le 10
101110 \sim 11 n,ai1000n, a _ i \le 1000
121312 \sim 13 ai1000a _ i \le 1000
141514 \sim 15 aia _ i[1,1018][1, 10 ^ {18}] 范围内均匀随机
161816 \sim 18 ai2×105a _ i \le 2\times 10 ^ 5
192019 \sim 20 无特殊性质

对于所有数据,1n2×1051 \le n \le 2\times 10 ^ 51ai10181 \le a _ i \le 10 ^ {18}