#2351. 合并相同数

合并相同数

暂无测试数据。

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

有一个正整数数列 {a}\red{\{a\},}只要还存在两个相同的数,就会进行以下操作:

找到值最小的并且出现次数大于等于2\red{2}的数x\red{x ,}记 最先出现的两个位置为 i\red{i}j(i<j),ai=aj=x\red{j(i<j) ,a_i=a_j=x,}移掉 ai\red{a_i}并且将aj\red{a_j}修改 为 2×x\red{2 \times x}

例:[3,4,1,2,2,1,1]\red{[3,4,1,2,2,1,1] →} [3,4,2,2,2,1]\red{[3,4,2,2,2,1] →} [3,4,4,2,1]\red{[3,4,4,2,1] →} [3,8,2,1]\red{[3,8,2,1]}

要求出最后得到的数列。

输入格式

第一行一个整数n\red{n ,}表示数列的大小。

第二行 n\red{n}个正整数,数列 a\red{{a}}

输出格式

第一行一个整数,操作后的数列大小 size\red{size}

第二行 size\red{size}个整数,操作后的数列。

样例

输入样例1

7

3 4 1 2 2 1 1

输出样例1

4

3 8 2 1

输入样例2

5

1 1 3 1 1

输出样例2

2

3 4

提示

对于50%\red{50\% }数据,2<=n<=1000\red{2<=n<=1000}

对于100%\red{100\% }数据,满足2<=n<=150000,1<ai<109\red{2<=n<=150000, 1<a_i<10^9}

普及组4

未参加
状态
已结束
规则
IOI
题目
8
开始于
2022-8-3 9:25
结束于
2022-8-3 12:25
持续时间
3 小时
主持人
参赛人数
23