logo AlgoBeat OnlineJudge
登录 注册

#215120. [海淀区入门组 2025] 摧毁积木塔

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

圣诞节的联欢活动上,还有一个拆积木塔的游戏。游戏的规则是,提供 座积木塔,所有积木塔都是由棱长为 的正方体积木块搭建而成,积木塔从左到右编号从 ,第 座塔的长和宽都是 ,高度为 (恰好由 个积木块搭建而成)。将积木块分为两类,如果上下左右四个方向都有相邻的积木块或地面,则称为内部块;否则称为边界块。规定摧毁积木塔的每一次操作为:摧毁当前局面下所有的边界块。你的任务是:计算同学们需要多少次操作才能摧毁所有积木塔中的所有积木块。

输入格式

第一行仅有一个整数 ),第二行包含 个整数 ),分别表示第 座塔的大小。

输出格式

输出所需操作数以摧毁所有积木塔中的所有积木块。

样例

样例输入 1

6
2 1 4 6 2 2

样例输出 1

3

样例输入 2

7
3 3 3 1 3 3 3

样例输出 2

2

数据范围与提示

样例 1 解释:每次边界块都用红色标记。第一次操作后,还剩下四个块,第二次操作后只剩下一个。这最后一个块在第三次操作中被摧毁。