编程题

1675:塔


时间限制: 1000 ms         内存限制: 262144 KB
提交数:820    通过数: 363

【题目描述】

你有$N$座塔一列排开。每座塔各自有高度,有可能相等。

你每次可以选择相邻的两座塔合并在一起,即这两座塔的高度叠加后变成了同一座塔。然后原本分别与这两座塔相邻的塔变得与这座新的塔相邻。

你的目标是使用最少的操作次数在游戏的最后获得一列塔,这些塔的高度从左到右形成一个不下降的数列。

【输入】

第一行一个整数$N$。

第二行$N$个整数,从左到右描述塔的高度。

【输出】

仅一个整数表示最少的操作次数。

【输入样例】

5
8 2 7 3 1

【输出样例】

3

【提示】

【数据规模】

对于30%的数据,$N≤10$。

对于60%的数据,$N,A_i≤200$。

对于100%的数据,$1≤N,A_i≤3000$。

查看答案
赣ICP备20007335号-2