比较好做的区间DP

状态转移方程:DP[i][j] 表示区间[i,j]最小的乘积和。

DP[i][j] = MIN{DP[i][k-1]+DP[k+1][j] + a[k]*a[i-1]*a[j+1] | i<k<j};

最后结果就是DP[2][N-1]

 #include <map>
#include <set>
#include <stack>
#include <queue>
#include <cmath>
#include <ctime>
#include <vector>
#include <cstdio>
#include <cctype>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
using namespace std;
#define eps 1e-15
#define MAXN 105
#define INF 1000000007
#define MAX(a,b) (a > b ? a : b)
#define MIN(a,b) (a < b ? a : b)
#define mem(a) memset(a,0,sizeof(a)) int a[],DP[][],N; int main()
{
while(~scanf("%d", &N))
{
for(int i=;i<=N;i++)
{
for(int j=;j<=N;j++) DP[i][j] = INF;
}
for(int i=;i<=N;i++)
{
scanf("%d", &a[i]);
}
for(int i=;i<N;i++)
{
for(int j=i;j>=;j--)
{
if(i == j) DP[j][i] = a[i] * a[i-] * a[i+];
else
{
int x = DP[j+][i]+a[j]*a[j-]*a[i+];
int y = DP[j][i-]+a[i]*a[j-]*a[i+];
DP[j][i] = MIN(x, y);
if(i-j>)for(int k = j+;k<i;k++)
{
x = DP[j][k-] + DP[k+][i] + a[k]*a[j-]*a[i+];
DP[j][i] = MIN(DP[j][i], x);
}
}
}
}
printf("%d\n", DP[][N-]);
}
return ;
}

最新文章

  1. 读取TDrawGrid之获取博易数据
  2. System.BadImageFormatException: 未能加载文件或程序集&quot;&quot;或它的某一个依赖项。试图加载格式不正确的程序。
  3. C++之路进阶——bzoj2879(美食节)
  4. ztree
  5. [自娱自乐] 4、超声波测距模块DIY笔记(四)——终结篇&#183;基于C#上位机软件开发
  6. 【jQuery Demo】jQuery打造动态下滑菜单
  7. WP8.1 Study12:文件压缩与Known Folder(包含SD卡操作)
  8. 浅谈Dynamic 关键字系列之一:dynamic 就是Object(转)
  9. JSON 之 SuperObject(8): 关于乱码的几种情况 - 向 Henri Gourvest 大师报告
  10. 一种Webconfig自动化升级方法
  11. Scala基础之注解(annotation
  12. JavaScript入门学习笔记(JSON)
  13. liunx centOS6.5安装jdk教程
  14. iScroll的使用
  15. Distances to Zero CodeForces - 803B (二分)
  16. ElasticSearch 索引整体迁移方案
  17. 《深入理解JAVA虚拟机》----------第三章 垃圾收集器与内存分配策略,笔记(下)
  18. Java虚拟机--虚拟机字节码执行引擎
  19. C语言--第三次作业
  20. 说说PHP中的命名空间相关概念

热门文章

  1. Codeforces Round #291 (Div. 2)
  2. 关于NSString的retainCount的各种结果原因
  3. Linux/Android 性能优化工具 perf
  4. WMware 10 Ubuntu 12.04 进入Unity模式
  5. 【英语】Bingo口语笔记(57) - 常见的口语弱读
  6. Android总结篇——Intent机制详解及示例总结
  7. MySQL基础之第17章 MySQL日志
  8. vmware 连网
  9. SQLite数据库和JPA简单介绍
  10. hadoop的ganglia数据监控