UVa 10304 Optimal Binary Search Tree / 区间DP
2014-03-10 19:54
483 查看
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int maxn = 255; int a[maxn]; int sum[maxn]; int dp[maxn][maxn]; int dfs(int l, int r) { if(dp[l][r] != -1) return dp[l][r]; if(l > r) return 0; dp[l][r] = 999999999; for(int i = l; i <= r; i++) { dp[l][r] = min(dp[l][r], dfs(l, i-1)+dfs(i+1, r)+sum[r]-sum[l-1]-a[i]); } return dp[l][r]; } int main() { int n; while(scanf("%d", &n) != EOF) { for(int i = 1; i <= n; i++) { scanf("%d", &a[i]); sum[i] = sum[i-1]+a[i]; } memset(dp, -1, sizeof(dp)); printf("%d\n", dfs(1, n)); } return 0; }
相关文章推荐
- uva 10304 - Optimal Binary Search Tree(区间dp)
- uva-10304 Optimal Binary Search Tree(区间dp)
- uva 10304 Optimal Binary Search Tree(区间dp)
- uva 10304 Optimal Binary Search Tree (区间DP)
- UVA 10304 Optimal Binary Search Tree (区间dp)
- UVA - 10304 Optimal Binary Search Tree 区间DP
- uva 10304 Optimal Binary Search Tree(区间dp)
- uva 10304 - Optimal Binary Search Tree(区间dp)
- UVa 10304 Optimal Binary Search Tree(区间DP)
- 区间dp(uva10304-Optimal Binary Search Tree)
- uva 10304 Optimal Binary Search Tree(dp)
- DP优化——四边形不等式 uva 10304 - Optimal Binary Search Tree
- uva 10304 Optimal Binary Search Tree(DP)
- UVa 10304 - Optimal Binary Search Tree
- UVA 10304 Optimal Binary Search Tree
- UVA10304- Optimal Binary Search Tree(最优排序二叉树OBST)
- UVA - 10304 Optimal Binary Search Tree
- UVa 10304 - Optimal Binary Search Tree
- UVA 10304 - Optimal Binary Search Tree
- uva 10304 Optimal Binary Search Tree