[LeetCode] Palindrome Number
来源:互联网 发布:java pagecache 编辑:程序博客网 时间:2024/06/14 01:42
要是面试遇到这道题,估计要挂了,想了很久才做出来。
因为不许使用多余的空间,所以一开始想的是两头缩小,比如12321->232->3,最后认为对称。结果遇到1021就失败了,02变成2,也认为两边对称。后来就想多了,觉得有什么特殊的算法,最后又回到这个想法,中间开始缩小。
虽然代码有点Ugly,很长,很容易出错,但值得欣慰的是完全按照要求来的,呵呵一下吧。
class Solution {public: bool isPalindrome(int x) {if (x < 0) {return false;}if (x >= 1000000000) {if (x / 100000 % 10 == x % 100000 / 10000) {x = x % 10000 + x / 100000 * 10000;return isPalindrome(x);}else {return false;}}else if (x >= 100000000) {x = x % 10000 + x / 100000 * 10000;return isPalindrome(x);}else if (x >= 10000000) {if (x / 10000 % 10 == x % 10000 / 1000) {x = x % 1000 + x / 100000 * 1000;return isPalindrome(x);}else {return false;}}else if (x >= 1000000) {x = x % 1000 + x / 10000 * 1000;return isPalindrome(x);}else if (x >= 100000) {if (x / 1000 % 10 == x % 1000 / 100) {x = x % 100 + x / 10000 * 100;return isPalindrome(x);}else {return false;}}else if (x >= 10000) {x = x % 100 + x / 1000 * 100;return isPalindrome(x);}else if (x >= 1000) {if (x / 100 % 10 == x % 100 / 10) {x = x % 10 + x / 1000 * 10;return isPalindrome(x);}else {return false;}}else if (x >= 100) {x = x % 10 + x / 100 * 10;return isPalindrome(x);}else if (x >= 10) {if (x / 10 == x % 10) {return true;}else {return false;}}else {return true;} }};
0 0
- LeetCode: Palindrome Number
- LeetCode Palindrome Number
- [Leetcode] Palindrome Number
- LeetCode: Palindrome Number
- [LeetCode] Palindrome Number
- leetcode 117: Palindrome Number
- Leetcode : Palindrome Number
- 【leetcode】Palindrome Number
- [LeetCode]Palindrome Number
- LeetCode 9 - Palindrome Number
- LeetCode-Palindrome Number
- [leetcode] Palindrome Number
- LeetCode - Palindrome Number
- LeetCode | Palindrome Number
- Leetcode: Palindrome Number
- LeetCode: Palindrome Number
- 【leetcode】Palindrome Number
- Leetcode Palindrome Number
- opencv for android 教程(环境搭建篇)
- 微软Excel 2007 框里打钩/打钩的方框选择
- 科目三并不难 盘点科目三技巧
- CAAnimation动画的一些知识点
- uva11889 - Benefit 数论
- [LeetCode] Palindrome Number
- HDU 1097 A hard puzzle
- Android 布局 LinearLayout 的 layout_weight 属性
- javascript replace将文字表情替换为图片
- AS3中的条件编译,让您的项目能轻松的控制多个版本
- 保护模式总结(三)——任务切换
- 第六周作业1——利用哈夫曼编码英文字母表
- JS实现div居中显示的例子
- send file descriptor via socket