【题目链接】

OpenJudge NOI 1.7 34:回文子串

【题目考点】

1. 字符串

2. 枚举

【解题思路】

假设字符串长为len,先枚举长为2的回文子串,再枚举长为3的回文子串,。。。,最后枚举长为n的回文子串。
如要枚举长为l的回文子串,先看下标0l-1是不是回文串,再看下标1l是不是回文串。。。最后看下标len-l~len-1谁不是回文串。

【题解代码】

解法1:使用字符数组

#include<bits/stdc++.h>
using namespace std;
char s[505];
bool isPalin(int st, int len)//s[st]开始长为len的子串是不是回文串
{//这段字符串最后一个位置为st+len-1 for(int i = st, j = st+len-1; i < j ; ++i, --j){if(s[i] != s[j])return false;}return true;
}
void show(int st, int len)
{for(int i = st; i <= st+len-1; ++i)cout << s[i];cout << endl;
}
int main()
{cin >> s;int len = strlen(s);for(int l = 2; l <= len; ++l)//回文子串长度 {for(int i = 0; i <= len-l; ++i)//最后一次看从len-l~len-1共l个字符是不是回文串{if(isPalin(i, l))show(i, l);}         }return 0;
}

解法2:使用string类

#include<bits/stdc++.h>
using namespace std;
string s;
bool isPalin(string str)//判断str是不是回文串
{string s1(str);//初始化s1和str相同 reverse(s1.begin(), s1.end());//将s1逆序 return str == s1;//如果逆序后和原字符串相同,那么就是回文串
}
int main()
{cin >> s;int len = s.length();for(int l = 2; l <= len; ++l)//回文子串长度 {for(int i = 0; i <= len-l; ++i)//最后一次看从len-l~len-1共l个字符是不是回文串{string sub = s.substr(i, l);if(isPalin(sub))cout << sub << endl;}         }return 0;
}

OpenJudge NOI 1.7 34:回文子串相关推荐

  1. 1.7 编程基础之字符串 34 回文子串 python

    http://noi.openjudge.cn/ch0107/34/ """1.7 编程基础之字符串 34 回文子串 http://noi.openjudge.cn/ch ...

  2. OpenJudge NOI 1.13 11:回文素数

    [题目链接] OpenJudge NOI 1.13 11:回文素数 [题目考点] 1. 函数 2. 质数 3. 回文数 [解题思路] 输入的数字n可以达到9位数字,枚举判断每个数字是否是回文数与质数, ...

  3. Openjudge NOI题库1.7编程基础之字符串 34:回文子串

     总时间限制: 1000ms 内存限制: 65536kB 描述 给定一个字符串,输出所有长度至少为2的回文子串. 回文子串即从左往右输出和从右往左输出结果是一样的字符串,比如:abba,cccde ...

  4. LeetCode:Longest Palindromic Substring 最长回文子串

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  5. 九度oj 题目1252:回文子串

    题目描述: 输入一个字符串,输出该字符串中对称的子字符串的最大长度. 比如输入字符串"google",由于该字符串里最长的对称子字符串是"goog",因此输出4 ...

  6. BZOJ2565 最长双回文子串 回文自动机,回文树

    bzoj2565: 最长双回文串 题意 顺序和逆序读起来完全一样的串叫做回文串.比如acbca是回文串,而abc不是(abc的顺序为"abc",逆序为"cba" ...

  7. [译+改]最长回文子串(Longest Palindromic Substring) Part II

    [译+改]最长回文子串(Longest Palindromic Substring) Part II 原文链接在http://leetcode.com/2011/11/longest-palindro ...

  8. 51NOD 1088 最长回文子串1089 最长回文子串 V2(Manacher算法)

    回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串. 输入一个字符串Str,输出Str里最长回文子串的长度. Input 输入Str(Str的长度 <= 1000(第二题要 ...

  9. Ural 1297 Palindrome(后缀数组+最长回文子串)

    https://vjudge.net/problem/URAL-1297 题意: 求最长回文子串. 思路: 先将整个字符串反过来写在原字符串后面,中间需要用特殊字符隔开,那么只需要某两个后缀的最长公共 ...

最新文章

  1. 在tomcat下部署两个或多个项目时 log4j和web.xml配置webAppRootKey 的问题(转)
  2. oracle trace文件解读
  3. linux 延时一微秒_让我们暂停一微秒
  4. AUTOSAR从入门到精通100讲(三十六)-AUTOSAR 通信服务两步走-CanSM概念-配置及代码分析
  5. 突发!Python再次卫冕,Java和C下降,你怎么看?
  6. android动态service,Android基础回顾之Service
  7. ural 1012K-based Numbers. Version 2 1013. K-based Numbers. Version 3
  8. 身在旋涡中的百度外卖,还能否找到接盘者?
  9. CorelDRAWX4的VBA插件开发(二)怎么查看开发者PDF文档和VBA内的对象浏览器
  10. 红外通信模块——详细资料(含遥控器按键对应的码值)
  11. mysql 三星索引_三星索引系统
  12. zabbix5.0手把手搭建过程
  13. java基础-File类与IO流
  14. wordpress 数据库_如何在WordPress中创建视频库(逐步)
  15. 递归解决不含连续的1的位串个数的问题
  16. GEE:变异系数法在遥感影像分析中的应用及权重计算
  17. 大数据时代网络安全分析
  18. 记录一个阿里云OSS图片上传错误
  19. a标签中调用js的方法
  20. 日志数据清洗(简单版)

热门文章

  1. 模板的日常~。~。。。(持续更新中...)
  2. SQLite在字符串比较中的大小写问题
  3. Eclipse JPBC library安装及测试
  4. 盘点云计算领域不可不读的9本书
  5. 数据中台:不是产品,不是技术,到底是什么?(附完整PPT下载)
  6. 从用户不足2000万到27亿,这项技术真要上天了?
  7. 从一线技术人员到阿里合伙人,主导了去“IOE”,没有他,阿里只能给美国公司打工!...
  8. NoSQL架构实践(三)——以NoSQL为缓存
  9. JEECG前后端分离UI框架实战抢先体验(ng2-admin+Angular4+AdminLTE+WebStorm)
  10. 解决Shockwave flash在谷歌浏览器上崩溃的问题