UESTC 1131
来源:互联网 发布:wps for mac破解版 编辑:程序博客网 时间:2024/06/03 06:39
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>using namespace std;const int maxn=2e2;const int INF=1e8;int dp[maxn][maxn],vis[maxn][maxn],arr[maxn];int t,n;int dfs(int l,int r){ if(vis[l][r]) return dp[l][r]; if(l>=r) return dp[l][r]=0; dp[l][r]=INF; for(int i=l;i<r;i++) dp[l][r]=min(dp[l][r],dfs(l,i)+dfs(i+1,r)+((arr[i]-arr[l-1])%100)*((arr[r]-arr[i])%100));//合并了两个礼物的处理。这里说下边界问题,DFS边界是前闭后开,i和i+1表示要消除的 vis[l][r]=1;//合并的处理:循环到i时,应该是合并i和i+1,上面以i为分界,两边求和取余,相当于都合并完了,只剩两件礼物。而这个状态转移方程取的就是区间里最后合并的两件礼物。 return dp[l][r];}int main(){ cin >> t; while(t--) { cin >> n; memset(vis,0,sizeof(vis)); memset(arr,0,sizeof(arr)); for(int i=1;i<=n;i++) { cin >> arr[i]; arr[i]+=arr[i-1];//求和 } cout << dfs(1,n) << endl; } return 0;}区间合并
阅读全文
0 0
- UESTC 1131
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- UESTC
- C#中改变显示器的分辨率
- 计算几何之相交直线交点的求法
- jquery表格插件Datatables的使用学习(一)
- 动态代理
- limesdr Ubuntu14安装记录
- UESTC 1131
- CentOS上进行JDK 配置
- CGI
- 碎纸片
- MySql Order By 多个字段 排序规则
- java类加载过程
- 史上最全面的Java高级学习体系(没有之一)
- MySQL基础表操作---IO操作(二)
- 51Nod-1000-A+B