poj 1651 Multiplication Puzzle【区间DP】
2017-07-24 08:41
309 查看
题目链接:http://poj.org/problem?
id=1651
题意:初使ans=0,每次消去一个值,位置在pos(pos!=1 && pos !=n)
同一时候ans+=a[pos-1]*a[pos]*a[pos+1]。一直消元素直到最后剩余2个,求方案最小的ans是多少?
代码:
id=1651
题意:初使ans=0,每次消去一个值,位置在pos(pos!=1 && pos !=n)
同一时候ans+=a[pos-1]*a[pos]*a[pos+1]。一直消元素直到最后剩余2个,求方案最小的ans是多少?
代码:
#include <stdio.h> #include <ctime> #include <math.h> #include <limits.h> #include <complex> #include <string> #include <functional> #include <iterator> #include <algorithm> #include <vector> #include <stack> #include <queue> #include <set> #include <map> #include <list> #include <bitset> #include <sstream> #include <iomanip> #include <fstream> #include <iostream> #include <ctime> #include <cmath> #include <cstring> #include <cstdio> #include <time.h> #include <ctype.h> #include <string.h> #include <string> #include <assert.h> #pragma comment(linker,"/STACK:1024000000,1024000000") using namespace std; const long long inf = 1e18; int n; int a[110]; long long dp[110][110]; int main() { while (cin>>n) { for (int i = 1; i <= n; i++) cin >> a[i]; memset(dp, 0, sizeof(dp)); for (int k = 2; k <= n - 1; k++)//区间长度 { for (int i = 1; i + k <= n; i++)//区间起点 { int j = i + k;//区间终点 dp[i][j] = inf; for (int r = i + 1; r < j; r++) { dp[i][j] = min(dp[i][j], dp[i][r] + dp[r][j] + a[i] * a[r] * a[j]); } } } cout << dp[1] << endl; } return 0; }
相关文章推荐
- POJ 1651 Multiplication Puzzle(区间DP)
- POJ 1651 区间DP Multiplication Puzzle
- POJ - 1651(区间DP)
- POJ1651 Multiplication Puzzle(相邻乘积之和最小,区间DP)
- POJ 1651 区间DP 记忆化
- poj 1651 Multiplication Puzzle(裸区间dp)
- POJ 1651 Multiplication Puzzle(区间dp)
- 【DP】 POJ 1651 Multiplication Puzzle 区间DP
- POJ 1651 Multiplication Puzzle(区间DP)
- POJ 1651 Multiplication Puzzle【区间DP】
- poj 1651 区间dp
- poj 1651 Multiplication Puzzle -- (动态规划,区间dp)
- poj 1651 区间DP
- POJ 1651 Multiplication Puzzle(区间dp)
- POJ 1651 Multiplication Puzzle(区间DP)
- [区间DP] Multiplication Puzzle POJ - 1651
- Multiplication Puzzle POJ - 1651 区间dp
- POJ 1651 Multiplication Puzzle(区间DP 水题)
- 区间dp入门[POJ2955][HDU2476][POJ3186][POJ1651][HDU4632][HDU4283][HDU4570][POJ3280]
- poj 1651 Multiplication Puzzle 区间dp