回文数:整数+字符串
来源:互联网 发布:人在国外怎么淘宝 编辑:程序博客网 时间:2024/05/06 16:09
1 整数判断回文数
int IsPalindrome(int iNumber){ //判断是否为回文数的函数 int temp=0; int number = iNumber; while(number){ //颠倒数后保存到temp中 temp=temp*10+(number%10); number=number/10; } if(iNumber==temp) //是回文数,返回1 return 1; else return 0; }
2字符串
http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=495
大家都知道,DXH 幼时性格怪癖,小朋友都不喜欢和他玩,这种情况一直到 DXH 的少年时期也没有改变。
少年时期的 DXH 迷上了”回文串”,“回文串”是指正着读倒着读都一样的字符串。DXH一个人的时候喜欢在地上随便写一个字符串 S,然后在这个字符串的右边添加尽量少的字符(可以不添加,就是 0 个),使得这个字符串变成“回文串”。但玩的时间长了,DXH 的手也酸了,聪明的你能帮他写一个程序,算出这个添加最少字符形成的回文串吗?
一个字符串 S[1..L]被称为回文串,当且仅当 S[i] = S[L - i + 1] (1 <= i <= L)。
#include <iostream>#include <string>using std::endl;using std::cin;using std::cout;using std::string;//判断是否为回文串int is_HuiWenStr(string s){ int j = s.length() - 1; for(int i=0; i<j; ++i , --j) { if(s[i] != s[j]) { return 0; } } return 1;}int main(){#ifdef LOCAL freopen("input.txt" , "r" , stdin); freopen("output.txt" , "w" , stdout);#endif int N; cin >> N; while(N--) { string str , result; cin >>str; if(is_HuiWenStr(str)) { cout << str << endl; }else{ int length = str.length(); //枚举添加的字符数量 for(int i=0;i<length; ++i) { result = str; for(int j=i;j>=0;--j) { result+= str[j]; } if(is_HuiWenStr(result)) { cout << result << endl; break; } } } }}
最长回文子串
暴力算法:我们求出一个最长公共子串的时候,我们检查一下这个子串是不是一个回文,如果是,那这个子串就是原串S的最长回文子串;如果不是,那么就去求下一个次长公共子串,以此类推。
参考:http://blog.csdn.net/computer_liuyun/article/details/27967963
阅读全文
0 0
- 回文数:整数+字符串
- 判断一个字符串、整数是否为回文字符串或回文数
- 判断一个字符串、整数是否为回文字符串或回文数
- 回文数回文字符串判断
- 回文数(整数数字)
- 回文数猜想 + 字符串
- CSDN-回文字符串数
- 回文数与回文字符串问题
- 回文数与回文字符串的判断
- 判断一个整数是否是回文数
- 判断一个整数是否是回文数
- 判断整数是否是回文数
- 统计整数区间的回文数
- 判断一个整数是否是回文数
- 整数趣题(回文数)
- 判断一个整数是否为回文数
- 判断整数是否是回文数
- 判断一个整数是否为回文数
- Linux内核很吊之 module_init解析 二
- GO大概总结
- jmeter之分布式(远程)部署
- Spring Integration集成框架之JDBC
- 《Spring技术内幕》学习笔记12——HibernateTemplate对Hibernate的封装
- 回文数:整数+字符串
- ModelAndView详解
- 鸟哥私房菜 第十一章 认识与学习bash
- 编程书籍
- 开源纯C#工控网关+组态软件(三)加入一个新驱动:西门子S7
- 微服务~分布式事务里的最终一致性
- IDEA 解决代码提示功能消失
- spring cloud+dotnet core搭建微服务架构:Api网关(三)
- centos服务器安装kvm虚拟机