C0757 能量槽(2603-6)
能量槽(2603-6)
题目描述
在实验室中,有一个“能量槽”和n个待处理的能量块。第i个能量块的能级为ai,其蕴含的能量为2ai。
实验需按顺序执行n次操作,第i次操作流程如下:
- 将第i个能量块放入堆槽的顶部。
- 随后启动“自动融合程序”,重复执行以下检查,直到无法继续:
- 若槽中能量块数量≤1,停止融合。
- 若顶部第 1 个与第 2 个能量块的能级不同,停止融合。
- 若顶部两个能量块能级相同,则将它们从槽中移除,并向顶部放入一个能级为原能级 + 1的新能量块,其能量为两者之和。
- 再次回到检查步骤,继续尝试融合。
求n次操作全部完成后,槽中剩余的能量块总数。
输入
第一行,一个整数n
接下来n行,每行一个整数ai
输出
输出n次操作结束后槽中剩余能量块的数量。
数据范围
1≤n≤2×10^5,0≤ai≤10^9,输入均为整数
输入样例1
7
2
1
1
3
5
3
3
输出样例1
3
输入样例2
5
0
0
0
1
2
输出样例2
4