CF607B: Zuma(区间dp)
来源:互联网 发布:神曲 天堂 知乎 编辑:程序博客网 时间:2024/06/05 18:56
每次删除一段回文子串,把整段删除的最小次数,简单区间dp,dp[i][j] = min(dp[i][k]+dp[k+1][j], dp[i][j]),如果a[i] == a[j],判断多一次dp[i][j] = min(dp[i+1][j-1], dp[i][j])。
# include <stdio.h># include <string.h># define INF 0x3f3f3f3fint min(int a, int b){return a<b?a:b;}int a[501], dp[501][501];int main(){ int n, i, j, k, len; while(~scanf("%d",&n)) { for(i=0; i<=500; ++i) for(j=0; j<=500; ++j) dp[i][j] = INF; for(i=0; i<n; ++i) { scanf("%d",&a[i]); dp[i][i] = 1;//第一次初始化 } for(i=0; i<n-1; ++i)//第二次初始化 if(a[i]==a[i+1]) dp[i][i+1] = 1; else dp[i][i+1] = 2; for(len=2; len<n; ++len) { for(i=0; i+len<n; ++i) { if(a[i]==a[i+len]) dp[i][i+len] = dp[i+1][i+len-1]; for(k=i; k<i+len; ++k) dp[i][i+len] = min(dp[i][k]+dp[k+1][i+len], dp[i][i+len]); } } printf("%d\n",dp[0][n-1]); } return 0;}
0 0
- CF607B: Zuma(区间dp)
- SPOJ-ZUMA(区间DP)
- HDU6212 Zuma(区间dp)
- SPOJ 6340 ZUMA(区间DP)
- CodeForces 607 B. Zuma(区间DP)
- CodeForces 607B:Zuma(区间DP)
- Codeforces_607B:Zuma(区间DP)
- Hdu-6212 Zuma(区间DP)
- Hdu 6212 Zuma 区间DP
- Codeforces Round #336 (Div. 2) D. Zuma(区间dp)
- Codeforces Round #336 (Div. 1)B. Zuma (区间DP)
- bzoj 1032: [JSOI2007]祖码Zuma(区间DP)
- Codeforces Round #336 (Div. 2)-D Zuma(区间DP)
- hdu2017青岛网络赛Zuma(区间dp)
- Codeforces 607B - Zuma (区间DP)
- Codeforces 607B Zuma 【区间dp】
- codeforces 607B Zuma 区间dp
- codeforces #336 D. Zuma (区间dp)
- SQL索引
- 改错之Hadoop
- MFC中,弹窗选择确定还是取消
- pycharm 远程调试openstack 代码
- Java Web Start
- CF607B: Zuma(区间dp)
- python pyqt5安装失败问题
- lightoj 1102 - Problem Makes Problem(组合数+逆元)
- Keras使用过程问题汇总
- 数据库事务隔离级别--脏读,幻读,不可重复读
- Java web项目 在线网络考试修改考试问题部分代码
- css框模型
- Extjs 限制 textfield / textarea 输入字数 , 兼容 IE Firefox Chrome
- 递归之无限极评论