Generating Palindromes LightOJ - 1033
Generating Palindromes LightOJ - 1033
题意:添加最少的字符使得给出的字符串成为回文串。输出添加的字符数。
方法:常规区间dp。ans[i][j]表示使得ans[i][j]成为回文串最少添加的字符数。如果i和j位置的字符相等那么ans[i][j]=ans[i+1][j-1],否则要么左边去掉一个,要么右边去掉一个,就是$min(get(l,r-1),get(l+1,r))+1$。
错误记录:和cf607b以及poj1141搞混。那两道题不需要添加字符成为回文串,只需要配对。也就是多个回文串并列也可以,不一定要整个回文串。这道题不一样。
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char a[];
int n,y,T,TT;
int ans[][];
int get(int l,int r)
{
if(l>=r) return ;
if(ans[l][r]!=0x3f3f3f3f) return ans[l][r];
if(a[l]==a[r]) return ans[l][r]=get(l+,r-);
return ans[l][r]=min(get(l,r-),get(l+,r))+;
}
int main()
{
scanf("%d",&T);
for(TT=;TT<=T;TT++)
{
scanf("%s",a+);
memset(ans,0x3f,sizeof(ans));
printf("Case %d: %d\n",TT,get(,strlen(a+)));
}
return ;
}
Generating Palindromes LightOJ - 1033的更多相关文章
- LightOJ 1033  Generating Palindromes(dp)
		
LightOJ 1033 Generating Palindromes(dp) 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid= ...
 - 1033 - Generating Palindromes
		
1033 - Generating Palindromes PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit ...
 - Light OJ  1033 - Generating Palindromes(区间DP)
		
题目大意: 给你一个字符串,问最少增加几个字符使得这个字符串变为回文串. ============================================================= ...
 - lightoj 1033 区间dp
		
题目链接:http://lightoj.com/volume_showproblem.php?problem=1033 #include <cstdio> #include <cst ...
 - Making Huge Palindromes LightOJ - 1258
		
题目链接:LightOJ - 1258 1258 - Making Huge Palindromes PDF (English) Statistics Forum Time Limit: 1 se ...
 - LightOJ1033 Generating Palindromes(区间DP/LCS)
		
题目要计算一个字符串最少添加几个字符使其成为回文串. 一年多前,我LCS这道经典DP例题看得还一知半解时遇到一样的问题,http://acm.fafu.edu.cn/problem.php?id=10 ...
 - lightoj 1033【区间DP/LCS】
		
题意: 给你一个长度<=100的字符串. 然后你可以在任何位置插入字符,问最少插入几个构成回文. 思路: 1.长度-LCS: 2.区间DP; 我保证小的区间是一个回文,然后枚举区间,构成大区间, ...
 - lightoj刷题日记
		
提高自己的实力, 也为了证明, 开始板刷lightoj,每天题量>=1: 题目的类型会在这边说明,具体见分页博客: SUM=54; 1000 Greetings from LightOJ [简单 ...
 - dp百题大过关(第一场)
		
好吧,这名字真是让我想起了某段被某教科书支配的历史.....各种DP题层出不穷,不过终于做完了orz 虽然各种手糊加乱搞,但还是要总结一下. T1 Monkey Banana Problem 这 ...
 
随机推荐
- UVA 10887 Concatenation of Languages  字符串hash
			
题目链接:传送门 题意: 给你两个集合A,B,任意组合成新的集合C(去重) 问你最后C集合大小 题解: 暴力 组成的新串hash起来 #include<bits/stdc++.h> usi ...
 - 简单的shell脚本编写
			
http://www.cnblogs.com/wuyuegb2312/p/3399566.html
 - 编写自定义PE结构的程序(如何手写一个PE,高级编译器都是编译好的PE头部,例如MASM,TASM等,NASM,FASM是低级编译器.可以自定义结构)
			
正在学PE结构...感谢个位大哥的文章和资料...这里先说声谢谢 一般高级编译器都是编译好的PE头部,例如MASM,TASM等一直都说NASM,FASM是低级编译器.可以自定义结构但是苦于无人发布相关 ...
 - 合肥 专业做APP(安卓,ios) 微信公共平台
			
合肥 专业做APP(安卓,ios) 微信公共平台 电话:15715696592
 - javascript 阻止事件冒泡 cancelBubble
			
javascript简单的阻止事件冒泡,可以使用事件的cancelBubble方法为true: html部分 <button id="btn1">点击显示div< ...
 - POJ 2421 Constructing Roads (Kruskal算法+压缩路径并查集 )
			
Constructing Roads Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 19884 Accepted: 83 ...
 - HDU3746 Cyclic Nacklace —— KMP 最小循环节
			
题目链接:https://vjudge.net/problem/HDU-3746 Cyclic Nacklace Time Limit: 2000/1000 MS (Java/Others) M ...
 - iOS——多线程编程详细解析
			
基本定义: 程序:由代码生成的可执行应用.(例如QQ.app) 进程:一个正在运行的程序可以看做是一个进程. (例如:正在运行的QQ 就是一个进程),进程拥有独立运行所需要的全部资源. 线程: 程序中 ...
 - codeforces  447C. DZY Loves Sequences  解题报告(446A)
			
题目链接:http://codeforces.com/problemset/problem/447/C 题目意思:给出 一个 包含 n 个数的序列你,从中需要找出这个序列的最长子串,满足在里面只修改其 ...
 - java 正则表达式 -Regular  Expression
			
正则表达式(Regular Expression),可以说就是一个字符构成的串,它定义了一个用来搜索匹配字符串的模式.正则表达式定义了字符串的模式,可以用来搜索.编辑或处理文本,不仅限于某一种语言(P ...