博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva 11584 Partitioning by Palindromes(dp)
阅读量:5136 次
发布时间:2019-06-13

本文共 480 字,大约阅读时间需要 1 分钟。

题意:给定一个字符串,分解成多个子串,每个子串都是回文串,问最少能分成多少个子串。

题解:

dp[i]表示前i个字符串分割成最少回文子串的数量;

0<=j<=i;如果字符串从j到i是回文串,那么dp[i]=min(dp[i],dp[j-1]+1);

#include 
using namespace std;int dp[1005];string s;bool ok(int j,int i){ while(j<=i) { if(s[j]!=s[i]) return false; i--; j++; } return true;}int main(){ int n; cin>>n; while(n--) { cin>>s; int len=s.length(); for(int i=0;i

  

转载于:https://www.cnblogs.com/mgxj/p/4970078.html

你可能感兴趣的文章
Assets和Raw区别
查看>>
【luogu4185】 [USACO18JAN]MooTube [并查集]
查看>>
手机号脱敏处理
查看>>
CI控制器调用内部方法并载入相应模板的做法
查看>>
Hdu - 1002 - A + B Problem II
查看>>
HDU - 2609 - How many
查看>>
每天CookBook之Python-003
查看>>
每天CookBook之Python-004
查看>>
Android设置Gmail邮箱
查看>>
StringBuffer的用法
查看>>
js编写时间选择框
查看>>
PHP压缩文件操作
查看>>
Java数据结构和算法(四)--链表
查看>>
JIRA
查看>>
ssl介绍以及双向认证和单向认证原理
查看>>
【BZOJ2441】【中山市选2011】小W的问题(树状数组+权值线段树)
查看>>
小技巧——直接在目录中输入cmd然后就打开cmd命令窗口
查看>>
深浅拷贝(十四)
查看>>
由级别和性格特征将程序员分类 ---看看你属于哪一种
查看>>
HDU 6370(并查集)
查看>>