#LQB0047. 数学实验

数学实验

题目描述

老师在黑板上写出了一个正整数数列,让同学们做一个数学实验,规则如下:

  1. 这组数的总个数为 NN,且 NN 不超过 5×1055\times 10^5;每个数的大小范围在 118080
  2. 从这组数中找出两个相邻且相同的数,删掉其中一个数,并把剩下的一个数加 11(例如:相邻的两个 66 变成一个 77)。
  3. 重复执行第 22 步。
  4. 当操作无法继续进行时,实验结束;此时实验结果定义为数列中最大的数

注意:不同的操作顺序可能得到不同的最大数。现在给定一个正整数数列,请你计算通过合理操作后,实验结果(最大数)能够达到的最大值。

例如:当 N=6N=6,数列为 1 2 2 2 3 41\ 2\ 2\ 2\ 3\ 4,一种得到最大值的方法为:先将后面两个 22 合并成 33,再将 3333 合并成 44,最后将 4444 合并成 55,故输出 55

输入格式

第一行输入一个正整数 NN
第二行输入 NN 个正整数,表示该数列,相邻两个数之间用一个空格隔开。

输出格式

输出一个正整数,表示实验结束后能够得到的最大的实验结果。

样例输入输出

样例输入1

6
1 2 2 2 3 4

样例输出1

5

数据范围与测试点说明

  • 1N5×1051\le N\le 5\times 10^5
  • 11\le 每个数 80\le 80

时间限制与内存限制

  • 时间限制:11
  • 内存限制:10241024 KiB