9. Palindrome Number
来源:互联网 发布:华东医院数据库 编辑:程序博客网 时间:2024/05/22 02:05
Determine whether an integer is a palindrome. Do this without extra space.
这道题不能用额外的空间,还有第一步先要把负数排除。
#include<stdio.h>#define bool char#define true 1#define false 0bool isPalindrome(int x) { int temp,num=0,i,j,k,flag=1,y,z,temp1,temp2; temp=x; if(temp<0)//首先排除负数不是回文数 return false; while(temp) { temp=temp/10; num++; } if(!(num%2))//偶数 { for(i=1;i<=num/2;i++) { temp1=x; temp2=x; j=i; k=num-i; while(j-1) { temp1=temp1/10; j--; } y=temp1%10; while(k) { temp2=temp2/10; k--; } z=temp2%10; if(y!=z) { flag=0; break; } } } else//奇数 { for(i=1;i<(num+1)/2;i++) { temp1=x; temp2=x; j=i; k=num-i; while(j-1) { temp1=temp1/10; j--; } y=temp1%10; while(k) { temp2=temp2/10; k--; } z=temp2%10; if(y!=z) { flag=0; break; } } } if(flag) return true; else return false;}int main(){ int x; bool a; scanf("%d",&x); a=isPalindrome(x); printf("%d\n",a); return 0;}
上面是我自己写的,通过了但是代码太长了,不整洁,自己看了都嫌弃,后来看看别人写的,服!
#include<stdio.h>#define bool char#define true 1#define false 0bool isPalindrome(int x) { int y,z,len,flag=1; if(x<0) return false; for(len=1;(x/len)>=10;len=len*10); while(x) { y=x/len; z=x%10; if(y!=z) { flag=0; break; } x=(x%len)/10; len=len/100; } if(flag) return true; else return false;}int main(){ int x; bool a; scanf("%d",&x); a=isPalindrome(x); printf("%d\n",a); return 0;}
0 0
- LeetCode 9. Palindrome Number
- [LeetCode]9.Palindrome Number
- LeetCode --- 9. Palindrome Number
- LeetCode 9.Palindrome Number
- [Leetcode] 9. Palindrome Number
- 9.Palindrome Number
- 9. Palindrome Number
- 9. Palindrome Number
- Problem 9.Palindrome Number
- 【leetcode】 9. palindrome number
- 9.Palindrome Number
- [LeetCode] 9.Palindrome Number
- 9. Palindrome Number
- LeetCode : 9. Palindrome Number
- 9. Palindrome Number
- LeetCode 9.Palindrome Number
- 9. Palindrome Number
- 9. Palindrome Number
- android之数据存储2
- [Json] Java中Json相关操作
- android控件——textView使用
- hadoop中NameNode、DataNode、Secondary、NameNode、JobTracker TaskTracker介绍
- 标准W3C盒子模型和IE盒子模型CSS布局经典盒子模型
- 9. Palindrome Number
- 网易内推面经_Android开发
- hdu 5867 Water problem
- 前端速学成财:第九课-webpack篇:编译JS的正确姿势
- php常用函数
- 棋盘覆盖(分治典例)
- Java虚拟机(二)——Java堆内存划分
- 51nod1001 数组中和等于k的数对
- 正确的设置View的背景图片