http://codevs.cn/problem/1048/
 时间限制: 1 s

 空间限制: 128000 KB
 题目等级 : 黄金 Gold

题解

题目描述 Description

有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量和w[i]+w[i+1]。问安排怎样的合并顺序,能够使得总合并代价达到最小。

输入描述 Input Description

第一行一个整数n(n<=100)

第二行n个整数w1,w2...wn  (wi <= 100)

输出描述 Output Description

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

样例输入 Sample Input

4

4 1 1 4

样例输出 Sample Output

18

 1 #include <algorithm>
 2 #include <cstring>
 3 #include <cstdio>
 4
 5 using namespace std;
 6
 7 int n;
 8 int sum[1005];
 9 int f[2017][2017];
10
11 int main()
12 {
13     scanf("%d",&n);
14     for(int i=1;i<=n;i++)
15         scanf("%d",&sum[i]),sum[i]+=sum[i-1];
16     for(int i=1;i<=n;i++)
17         for(int j=1;j<=n;j++)
18             if(j==i) f[i][j]=0;
19             else f[i][j]=1e7;
20     for(int i=n-1;i>=1;i--)
21         for(int j=1;j<=n;j++)
22             for(int k=i;k<j;k++)
23             f[i][j]=min(f[i][j],f[i][k]+f[k+1][j]+sum[j]-sum[i-1]);
24     printf("%d",f[1][n]);
25     return 0;
26 }

转载于:https://www.cnblogs.com/Shy-key/p/6752503.html

codevs——T1048 石子归并相关推荐

  1. Codevs 3002 石子归并 3(DP四边形不等式优化)

    3002 石子归并 3 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], 每次 ...

  2. codevs 1048 石子归并

    传送门 1048 石子归并  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], ...

  3. 区间DP{环形}:石子归并-2

    题目描述 Description 在一个园形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法, ...

  4. 【codevs1048】【codevs115406TG】石子归并、能量项链,序列dp的典型题目

    1048 石子归并 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并 ...

  5. GarsiaWachs算法:石子归并问题

    1023 石子归并 V3 基准时间限制:2 秒 空间限制:131072 KB 分值: 320 难度:7级算法题  收藏  关注 N堆石子摆成一条线.现要将石子有次序地合并成一堆.规定每次只能选相邻的2 ...

  6. 51nod 1021 石子归并 (动态规划 简单代码)

    题目: 思路:动态规划,递推式子 dp[i][j] = min(dp[i][j], dp[i][k] + dp[k+1][j] + sum[j] - sum[i-1]); dp[i][j]表示合并第i ...

  7. 石子归并 51Nod - 1021

    N堆石子摆成一条线.现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的代价.计算将N堆石子合并成一堆的最小代价. 例如: 1 2 3 4,有不少 ...

  8. 算法讲解 -- 区间dp经典模型与优化(石子归并)

    石子合并问题是最经典的DP问题.首先它有如下3种题型: PPT讲解:点击打开链接 (1)有N堆石子,现要将石子有序的合并成一堆,规定如下:每次只能移动任意的2堆石子合并,合并花费为新合成的一堆石子的数 ...

  9. 【codevs1048】石子归并

    提交:http://codevs.cn/problem/1048/ 递推 //f[i]:到i为止的LIS的长度. //f[i]=max{1,f[j]+1|j<i&&aj<a ...

  10. 动态规划石子排序java_动态规划之石子归并

    题目:有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量 和w[i]+w[i+1].问安排怎样的合并顺序,能够使得总合并代价达到最小. 输 ...

最新文章

  1. [导入]将文字内容和图片插入到Access数据库(转帖)
  2. 远程访问mysql设置
  3. 一文搞懂临床研究常见类型
  4. linux / 命令行 / LD_DEBUG 命令
  5. Oracle备份恢复之逻辑备份
  6. 14.vue路由脚手架
  7. 抑郁症损伤神经细胞吗_使用神经网络探索COVID-19与抑郁症之间的联系
  8. 工作309:uni-获取vuex里面的值
  9. 关于JS中apply和call详细解答
  10. 世界上第一台计算机国际象棋大师是如何诞生的?
  11. Reporting Services Internal Error(诡异的问题)-【转载】
  12. Java类变量和类方法详解
  13. OpenGl文章 Android OpenGL ES 简明开发教程
  14. windows 2012下安装.NET框架时出现组件的文件跟组件清单中的验证信息不匹配,无法安装
  15. IT视频课程集(包含各类Oracle、DB2、Linux、Mysql、Nosql、Hadoop、BI、云计算、编程开发、网络、大数据、虚拟化
  16. ubuntu 彻底删除php7,Ubuntu彻底删除PHP7.0的方法
  17. 云堡垒机和软件堡垒机哪个好?区别是什么?
  18. 函数式编程中的副作用概念
  19. 如何包装自己的简历?(HR眼中的好简历是什么样的?/这样写简历才会有面试机会)...
  20. 机械臂动力学——动力学建模

热门文章

  1. python加mysql加界面用代码写,使用python写一个监控mysql的脚本,在zabbix web上加上模板...
  2. stol函数在linux下使用,linux socket编程(一)
  3. Linux系统编程 -- 文件描述符的复制:dup()和dup2()
  4. 设计模式---备忘录模式(C++实现)
  5. Jtopo Demo源码下载方式
  6. Docker安装vi命令
  7. 大学课程很少有教怎么设计单片机开发板,进阶板更不用说
  8. python识别文字并且提示_python识别图像并提取文字的实现方法
  9. 【渝粤教育】国家开放大学2018年秋季 0275-22T内科护理学 参考试题
  10. [渝粤教育] 西南科技大学 英语写作 在线考试复习资料