题目名称 80. 石子合并
输入输出 shizi.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 Gravatarsywgz 于2008-07-24加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:646, 提交:1046, 通过率:61.76%
Gravatarslongle 100 0.000 s 0.00 MiB Pascal
Gravatarslongle 100 0.000 s 0.00 MiB Pascal
Gravatarslongle 100 0.000 s 0.00 MiB Pascal
Gravatarslongle 100 0.000 s 0.00 MiB Pascal
GravatarSky_miner 100 0.000 s 0.00 MiB C++
GravatarHzoi_chairman 100 0.000 s 0.00 MiB C++
Gravatar_Itachi 100 0.000 s 0.00 MiB C++
Gravatar金身人面兽 100 0.000 s 0.00 MiB C++
Gravatar_Itachi 100 0.000 s 0.00 MiB C++
GravatarNewBee 100 0.000 s 0.00 MiB C++
本题关联比赛
暑假培训七
清明时悲哀杯
刷题ing
板子大赛
关于 石子合并 的近10条评论(全部评论)
区间DP模板题
Gravatar遥时_彼方
2021-11-04 20:24 38楼
数据范围有坑儿
开105大小70分
115大小80分
开了一个205才100的
Gravatarnn
2021-05-25 20:01 37楼
看这里! https://www.cnblogs.com/Tidoblogs/p/11420302.html
Gravatar李俊辉
2019-08-27 19:30 36楼
这一道题的数组开大一点!题目中的那个n<=100有坑!
Gravatar李俊辉
2019-08-27 19:28 35楼
0.016s
我骄傲
Gravatar霖:404
2019-05-12 11:07 34楼
Gravatarleon
2018-12-03 20:51 33楼
回复 @liu_runda :
Gravatar小龙却豆蔻
2018-07-16 13:47 32楼
回复 @思邈然 :
谢谢
Gravatar小龙却豆蔻
2018-07-16 13:47 31楼
回复 @NVIDIA :
Gravatar小龙却豆蔻
2018-07-16 13:45 30楼
前缀和过不了?!?!?
GravatarJustWB
2017-09-13 17:21 29楼

80. 石子合并

★★   输入文件:shizi.in   输出文件:shizi.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】

设有 $N$ 堆石子排成一排,其编号为 $1,2,3,…,N(N \leq 100)$。每堆石子有一定的重量。现要将 $N$ 堆石子并成为一堆。合并的过程只能每次将相邻的两堆石子合并成一堆(每次合并花费的代价为当前两堆石子的总重量),这样经过 $N-1$ 次合并后成为一堆,合并的总代价为每次合并花费的代价和。找出一种合理的合并方法,使总的代价最小。

例如:有 $3$ 堆石子,重量分别为 $13,7,8$,有两种合并方案:

第一种方案:先合并 $1,2$ 号堆,合并后的这堆石子重量为 $20$,本次合并代价为 $20$,再拿该堆与第 $3$ 堆石子合并,合并后的石子重量为 $28$,本次合并代价为 $28$,将 $3$ 堆石子合并到一起的总代价为:$20+28$,即 $48$;

第二种方案:先合并 $2,3$ 号堆,合并后的这堆石子重量为 $15$,本次合并代价为 $15$,再拿该堆与第 $1$ 堆石子合并,合并后的石子重量为 $28$,本次合并代价为 $28$,将 $3$ 堆石子合并到一起的总代价为:$15+28$,即 $43$;

采用第二种方案可获得最小总代价。

【输入格式】

输入由若干行组成,第一行有一个整数,$n(1≤n≤100)$;表示石子堆数。第 $2$ 至 $n+1$ 行是每堆石子的重量。

【输出格式】

一个整数,表示合并的最小代价。

【样例输入】

7
13
7
8
16
21
4
18

【样例输出】

239

【提示】

合并总代价不大于 $2.1*10^8$.

【来源】

NOI 1995