C0757 能量槽(2603-6)


能量槽(2603-6)

题目描述

在实验室中,有一个“能量槽”和n个待处理的能量块。第i个能量块的能级为ai,其蕴含的能量为2ai。

实验需按顺序执行n次操作,第i次操作流程如下:

  1. 将第i个能量块放入堆槽的顶部。
  2. 随后启动“自动融合程序”,重复执行以下检查,直到无法继续:
  • 若槽中能量块数量≤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

答题记录
就绪