tyvj 乘法游戏
来源:互联网 发布:java 隐式参数 编辑:程序博客网 时间:2024/05/16 06:35
思路:dp题,f[i][j]表示从i到j的最小值,先把f数组初始化为很大,求最小值,把f[i][j]分为i到k,和k到j两段区间,分解成小部分,得到动态转移公式
f[i][j]=min(f[i][j],f[i][k]+a[i]*a[k]*a[j]+f[k][j]);
#include<stdio.h>#include<string.h>#include<stdlib.h>const int INF=100000;int a[105];int f[105][105];int main(){ int n; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]); for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) f[i][j]=INF; for(int i=1;i<=n;i++) f[i][i-1]=f[i][i]=f[i][i+1]=0; for(int i=2;i<=n-1;i++) f[i-1][i+1]=a[i-1]*a[i]*a[i+1]; for(int i=n-2;i>0;i--) { for(int j=i+2;j<=n;j++) { for(int k=i+1;k<j;k++) { if(f[i][j]>f[i][k]+a[i]*a[k]*a[j]+f[k][j]) f[i][j]=f[i][k]+a[i]*a[k]*a[j]+f[k][j]; } } } printf("%d\n",f[1][n]); return 0;}
0 0
- TYVJ 1014 乘法游戏
- Tyvj 1014 乘法游戏
- tyvj 乘法游戏
- 【动态规划】【tyvj】乘法游戏
- Tyvj-OJ-p1014 乘法游戏
- 乘法游戏(tyvj P1014)区间dp
- tyvj 1014 乘法游戏
- tyvj p1008 传球游戏
- Tyvj 1008 传球游戏
- tyvj 1008 传球游戏
- tyvj P1519 博彩游戏
- Tyvj 1008 传球游戏 dp
- 吃糖果游戏(tyvj 1567)
- 【区间DP】乘法游戏
- codevs1966乘法游戏
- 【tyvj1041】乘法游戏
- <区间DP> 乘法游戏
- 计蒜客 乘法游戏
- 设计模式(一) 单例模式
- 下面是20个非常有用的Java程序片段,希望能对你有用。
- 阿里-聚石塔
- 你们有半数以上的人留下的是gmail而不是QQMail/Foxmail的电子邮件
- 大部分的CPU时间用于等待磁盘去读取数据
- tyvj 乘法游戏
- 《算法导论》笔记 第24章 24.4 差分约束与最短路径
- 在淘宝内网里看到同事发了贴说了一个CPU被100%的线上故障
- Hibernate入门 - Transaction
- MFC多文档的创建和打开过程
- 平日都忙,你现在终于获得了学好一门外语的上好机会
- java之编译时类型(前期绑定)和运行时类型 (后期绑定、动态绑定、运行时绑定)
- 解决COCOSTUDIO 1.3.0.1各种痛恨的控件Reader 的内存泄露
- Java 8 中的Aggregate Operations