uva 11584 计算最少回文串数 动态规划 lrj-P276
来源:互联网 发布:excel2010编程教程 编辑:程序博客网 时间:2024/06/07 01:31
题意:
将一个字符串化分成最少的部分,每一个部分都是回文串
Sample Input
3
racecar
fastcar
aaadbccb
Sample Output
1
7
3
题解:
如果 区间(j,i)是回文串,那么就
if(judge(j,i)) dp[i]=min(dp[i],dp[j-1]+1);初始化dp【i】= i
详细见代码
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int dp[1010];char str[1010];int judge(int a,int b){ while(a<=b&&str[a]==str[b]) a++,b--; return a>=b;}int main(){ int T; //freopen("in.txt","r",stdin); scanf("%d",&T); while(T--) { dp[0]=0; scanf("%s",str+1); int len=strlen(str+1); for(int i=1;i<=len;i++){ dp[i]=i; for(int j=1;j<=i;j++){ if(judge(j,i)) dp[i]=min(dp[i],dp[j-1]+1); } } printf("%d\n",dp[len]); } return 0;}
阅读全文
0 0
- uva 11584 计算最少回文串数 动态规划 lrj-P276
- uva 437 动态规划 lrj
- uva 1347 动态规划DAG lrj-P269
- uva 11400 lrj-P275 动态规划
- 动态规划(划分成回文串,uva 11584)
- POJ1221 计算数的单峰回文分解 动态规划
- JS实现计算最少回文切割数
- 回文串最少划分数
- 回文数问题;动态规划;
- 动态规划(scheme)--求最少硬币数
- uva 11584Partitioning by Palindromes dp(最少回文串划分)
- 回文串-动态规划
- uva 116 动态规划 多阶段决策问题 路径记录 lrj-P270
- uva 10285 lrj-P304 从简单DAG动态规划得到的感悟
- 动态规划算法之寻找最长回文数串
- 动态规划——回文串最小分割数
- 回文最少分割数
- 回文最少分割数
- GOS系列之上传附件
- getOutputStream() has already been called for this response
- WiFiDisplay
- 缓存文件可以放在哪里?它们各自的特点是什么?
- Chapter 4
- uva 11584 计算最少回文串数 动态规划 lrj-P276
- Linux任务前后台的切换
- spring boot 下 shiro+redis与mybatis redis cache冲突的解决办法
- 爱前端JS基础课程笔记1-20
- scp 跨机远程拷贝
- XUtils3导入Android Studio
- 3selenium+python 定位
- Python爬虫
- 在Java中,将ExecutorService转为守护程序