回文字符串-动态规划
来源:互联网 发布:淘宝粤通卡车宝是什么 编辑:程序博客网 时间:2024/05/16 15:46
描述
所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba"。当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串。现在要求你,给你一个字符串,可在任意位置添加字符,最少再添加几个字符,可以使这个字符串成为回文字符串。
输入
第一行给出整数N(0<N<100)
接下来的N行,每行一个字符串,每个字符串长度不超过1000.
输出
每行输出所需添加的最少字符数
样例输入
1
Ab3bd
样例输出
2
package com.lulu.dp;
import java.util.Scanner;
public class HuiWen {
static String str;
static char []s;
static int [][]a;
/**
* @param args
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
while(n-- > 0)
{
str = in.next();
s = str.toCharArray();
a = new int[s.length][s.length];
for(int i = 0; i < s.length; i++)
{
for(int j = 0; j < s.length; j++)
{
a[i][j] = -1;
}
}
System.out.println(dp(0, s.length-1));
}
}
private static int dp(int i, int j) {
if(i >= j) return 0;
if(a[i][j]!=-1) return a[i][j];
if(s[i]==s[j])
return a[i][j] = dp(i+1,j-1);
else
{
return a[i][j] = Math.min(dp(i+1,j)+1,dp(i, j-1)+1);
}
}
}
0 0
- 回文字符串-动态规划
- 动态规划之回文字符串
- 【动态规划】37回文字符串
- 动态规划:最长回文字符串
- 南阳理工学院动态规划专题 回文字符串
- NYOJ 37 动态规划 回文字符串
- NYOJ37 回文字符串 【动态规划】+【LCS模板】
- 南阳 oj 动态规划 回文字符串
- nyoj--37--回文字符串(动态规划)
- 动态规划求解最长回文字符串
- 动态规划求回文---给定字符串,插入字符形成回文
- 【字符串动态规划】最长回文字串+交替字符串
- 变成回文字符串所需要的次数-动态规划
- 动态规划题:把一个字符串变为回文串
- nyist oj 37 回文字符串 (动态规划经典)
- NYOJ 题目37 回文字符串(动态规划)
- 回文字符串 (动态规划,最长公共子序列)
- 动态规划求最大回文字符串并输出
- poj 2502最短路subway
- 打包文档
- Hexo搭建独立博客,托管到Github和Coding
- 点击图片变大
- iOS UITextView限制输入字数并显示剩余字数
- 回文字符串-动态规划
- Sublime Text 3 的一些个人配置
- iOS开发——keychain的使用
- spawnp()--Spawn Process with Path
- 极光消息推送工具类
- C#中随机分组相关Test
- ashx页面中context.Session["xxx"]获取不到值的解决办法
- AchartEngine折线图
- 渐进记号的相关证明