51nod 1088 最长回文子串 【中心拓展法/输出长度和路径】
 收藏
 收藏 关注
 关注输入Str(Str的长度 <= 1000)
输出最长回文子串的长度L。
daabaac
5 [代码]:
#include<bits/stdc++.h> using namespace std;
#define N 550
int mp[N][N];
int main()
{
string s;
cin>>s;
int n=s.size();
int res=; for(int i=; i<n; i++){ for(int j=;(i-j)>=&&(i+j)<n; j++){
if(s[i-j]!=s[i+j]) break;
res=max(res,*j+);
} for(int j=;(i-j)>=&&(i+j+)<n; j++){
if(s[i-j]!=s[i+j+]) break;
res=max(res,*j+);
}
}
printf("%d\n",res);
}
输出长度
#include<bits/stdc++.h>
#include<iostream>
using namespace std;
#define N 5050
int main()
{
string s;
int pos[];
cin>>s;
int res = , st=, ed=;
int n = s.size();
for(int i=;i<n;++i)
pos[i]=i;
for(int i=; i<n; i++) {
for(int j= ;(i-j)>=&&(i+j)<n ;j++) {
if(s[i-j]!=s[i+j]) break;
if(*j+>res){
res=*j+;
st=pos[i-j];
ed=pos[i+j];
}
} for(int j= ;(i-j)>=&&(i+j+)<n ;j++) {
if(s[i-j]!=s[i+j+]) break;
if(*j+>res){
res=*j+;
st=pos[i-j];
ed=pos[i+j+];
}
}
}
for(int i=st; i<=ed; i++)
cout<<s[i];
cout<<endl;
return ;
}
输出子串
51nod 1088 最长回文子串 【中心拓展法/输出长度和路径】的更多相关文章
- 51nod 1088 最长回文子串
		1088 最长回文子串 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串. 输入一 ... 
- (最长回文子串 线性DP)  51nod 1088 最长回文子串
		输入一个字符串Str,输出Str里最长回文子串的长度. 回文串:指aba.abba.cccbccc.aaaa这种左右对称的字符串. 串的子串:一个串的子串指此(字符)串中连续的一部分字符构成的子(字符 ... 
- 51NOD 1088 最长回文子串&1089 最长回文子串 V2(Manacher算法)
		回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串. 输入一个字符串Str,输出Str里最长回文子串的长度. Input 输入Str(Str的长度 <= 1000(第二题要 ... 
- 51Nod 1089 最长回文子串 V2 —— Manacher算法
		题目链接:https://vjudge.net/problem/51Nod-1089 1089 最长回文子串 V2(Manacher算法) 基准时间限制:1 秒 空间限制:131072 KB 分值: ... 
- 【LeetCode】最长回文子串-中心扩展法
		[问题]给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 : 输入: "babad" 输出: "bab" 注意: ... 
- 51nod 1089 最长回文子串 V2(Manacher算法)
		回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串. 输入一个字符串Str,输出Str里最长回文子串的长度. 收起 输入 输入Str(Str的长度 <= 100000) ... 
- 51nod(1089 最长回文子串 V2)(hash 加二分)
		1089 最长回文子串 V2(Manacher算法) 回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串. 输入一个字符串Str,输出Str里最长回文子串的长度. 输入 ... 
- 51nod 1089 最长回文子串 V2(Manacher算法)
		基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入 ... 
- 51nod 1089最长回文子串V2 (manacher)
		经典题 manacher是一种很神奇的算法, 算是动态规划的一种,不过利用的信息非常有效 #include <iostream> #include <cstdio> #incl ... 
随机推荐
- python入门:数字型和字符串换行要同类型 注意连接符
			#!/usr/bin/env python # -*- coding: utf-8 -*- #数字型和字符串换行要同类型 注意连接符 a = 1 b = 2 print(str(a) + " ... 
- phpstudy2016+phpstorm2017-3+xdebug+chrome
			1. 勾选Xdebug 后 phpstudy 会自动重启服务 [XDebug] xdebug.profiler_output_dir="D:\phpStudy\tmp\xdebug" ... 
- Head First Python (二)
			if...else... 1 movies = ["The Holy Grail",1975,"Terry Jones & Terry Gilliam" ... 
- MySQL迁移至MariaDB
			为什么要用MariaDB来代替MySQL MariaDB是MySQL社区开发的分支,也是一个增强型的替代品.它由MySQL前开发者们带头组织的基金会开发,使用起来和MySQL完全一样.自从Oracle ... 
- HDU:2255-奔小康赚大钱(KM算法模板)
			传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2255 奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others) Mem ... 
- SPOJ 375 树链剖分 QTREE - Query on a tree
			人生第一道树链剖分的题目,其实树链剖分并不是特别难. 思想就是把树剖成一些轻链和重链,轻链比较少可以直接修改,重链比较长,用线段树去维护. 貌似大家都是从这篇博客上学的. #include <c ... 
- 哪里是Maven的中央存储库?
			当你建立了一个Maven工程,Maven会检查你的pom.xml文件,确定要下载的依赖.首先,Maven将从您的本地库Maven查找,如果没有找到,Maven会从中央存储库-http://repo1. ... 
- luogu1736 创意吃鱼法
			好的题解使人一下就懂啊-- s1[i][j]表示(i,j)最多向左(或右)延伸多少个格子,使这些格子中的数都是0(不包括(i,j)) s2[i][j]表示(i,j)最多向上延伸多少个格子,使这些格子中 ... 
- luogu1578 奶牛浴场 枚举点最大子矩阵
			建议看看王知昆dalao的论文,讲得很好 #include <algorithm> #include <iostream> #include <cstring> # ... 
- JS使用onerror进行默认图像显示,可代替alt
			JS代码 //图像加载出错时的处理 function errorImg(img) { img.src = "默认图片.jpg"; img.onerror = null; } HTM ... 
 
			
		