区间DP UVA 10739 String to Palindrome
2024-09-30 15:33:45
/*
题意:三种操作,插入,删除,替换,问最少操作数使得字符串变成回文串
区间DP:有一道类似的题,有点不同的是可以替换,那么两端点不同的时候可以替换掉一个后成回文,
即dp[j+1][k-1] + 1,还有这道题没有要求打印
*/
/************************************************
* Author :Running_Time
* Created Time :2015-8-17 15:45:22
* File Name :UVA_10739.cpp
************************************************/ #include <cstdio>
#include <algorithm>
#include <iostream>
#include <sstream>
#include <cstring>
#include <cmath>
#include <string>
#include <vector>
#include <queue>
#include <deque>
#include <stack>
#include <list>
#include <map>
#include <set>
#include <bitset>
#include <cstdlib>
#include <ctime>
using namespace std; #define lson l, mid, rt << 1
#define rson mid + 1, r, rt << 1 | 1
typedef long long ll;
const int MAXN = 1e3 + ;
const int INF = 0x3f3f3f3f;
const int MOD = 1e9 + ;
int dp[MAXN][MAXN];
char str[MAXN]; int work(void) {
memset (dp, , sizeof (dp));
int len = strlen (str);
for (int i=; i<=len; ++i) {
for (int j=; j+i-<len; ++j) {
int k = j + i - ;
int &res = dp[j][k] = INF;
if (str[j] == str[k]) res = dp[j+][k-];
res = min (res, min (dp[j+][k], min (dp[j][k-], dp[j+][k-])) + );
}
}
return dp[][len-];
} int main(void) { //UVA 10739 String to Palindrome
int T, cas = ; scanf ("%d", &T);
while (T--) {
scanf ("%s", str);
printf ("Case %d: %d\n", ++cas, work ());
} return ;
}
最新文章
- elk系列8之logstash+redis+es的架构来收集apache的日志
- ftp下载在谷歌与火狐不同
- oracle在cmd中启动数据库实例
- linux笔记:shell编程-文本处理命令
- SQLSERVER进程CPU使用率100%
- [课程设计]Scrum 2.2 多鱼点餐系统开发进度(下单页面修复&;美化)
- javascript 函数返回值(return)、定时器(setTimeout、setInterval)
- ubuntu14.04修复启动项
- ACM——圆柱体的表面积
- Scala的Option类型
- struts2文件上传限制大小问题
- WebIM(4)----Comet的特殊之处
- JS代码中加上alert才能正常显示效果
- Mysql语句的执行过程
- 使用LSTM和Softmx来进行意图识别
- HTML5 WebSocket 协议
- Altmetric
- BZOJ2079:[POI2010]Guilds(乱搞)
- spark rdd Transformation和Action 剖析
- [maven] 项目不同环境自动打包
热门文章
- Python访问MySQL数据库并实现其增删改查功能
- RHEL 启动系统及故障排除
- [Tools] Create a Chrome Extension
- 分享:Mac与Phy组成原理的简单分析
- 在云服务器 ECS Linux CentOS 7 下重启服务不再通过 service 操作,而是通过 systemctl 操作
- Android Material Design-Maintaining Compatibility(保持兼容性)-(七)
- 2014/4/18 ① button与submit的区别 ②现象 : 数据库中其他值可以取到 有的却取不到 解决 看获取时“#”有无
- wget和curl
- Unable to resolve dependency for &#39;:app@debug/compileClasspath&#39;: Could not resolve com.android.support.constraint:constraint-layout:1.1.0. Could not resolve com.android.support.constraint:constraint-l
- Android连接wifi,调用系统API【转】