最新消息:码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

信息学奥赛题库- 塔

C++ 少儿编程 1237浏览 0评论

码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

【题目描述】

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

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

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

【输入】

第一行一个整数$N$。

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

【输出】

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

【输入样例】

5
8 2 7 3 1

【输出样例】

3

【提示】

【数据规模】

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

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

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

您必须 登录 才能发表评论!