B4280 [蓝桥杯青少年组国赛 2023] 数学实验
题目背景
本题原题为:[P3147 [USACO16OPEN] 262144 P](https://www.luogu.com.cn/problem/P3147)。
题目描述
老师在黑板上写出了一个正整数数列,让所有同学都来做一个数学实验,要求如下:
1. 这组数总共不超过 $500000$ 个,每个数的大小范围在 $1 \sim 80$ 之间;
2. 要从这组数中找出两个相邻且相同的数,删掉其中一个数,剩下的一个数加 $1$(例如: 两个相邻的 $6$,变成一个 $7$);
3. 重复执行第 $2$ 步;
4. 当操作无法继续进行时,实验结束,此时,实验结果就是这组数里面最大的数。
注意: 不同的实验方案得到的最大数不同。
现在给定了一个正整数数列,请你编写程序计算出能够得到的实验结果最大是多少。
例如:当 $N=6$,这个正整数数列是 $1$、$2$、$2$、$2$、$3$、$4$ 时,得到最大数的方法如下:先将后面两个 $2$ 变成一个 $3$ ,然后 $3$ 和 $3$ 变成 $4$,最后 $4$ 和 $4$ 变成 $5$。可以证明,没有其它更好的方案,故输出 $5$。
输入格式
第一行输入一个正整数 $N$($1 \leq N \leq 500000$)。
第二行输入 $N$ 个正整数($1 \leq$ 正整数 $\leq 80$),相邻两个数之间用一个空格隔开。
输出格式
输出一个正整数,表示实验结束后能够得到的最大的实验结果。