码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode_9题——Palindrome Number (数学问题)

时间:2015-05-26 18:26:29      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

Palindrome Number

 Total Accepted: 57795 Total Submissions: 194286My Submissions

 

Determine whether an integer is a palindrome. Do this without extra space.

click to show spoilers.

 

Hide Tags
 Math
Have you met this question in a real interview? 
Yes
 
No
 

      这题是简单题,但题目要求不要使用多余的内存空间,所以做时还是要想想,我是在开始是先计算出数的位数

然后每次比较是否回文时,就单独取出第i位,即先模再除就可以取出来了。

#include<iostream>
#include<string>
#include <math.h>
using namespace std;
int weishu(int x)
{ 
	for(int i=0;i<=11;i++)
		if((x/(int)pow(10.0,i))==0)
			return i;
}
bool isPalindrome(int x) 
{
	if(x<0)
		return false;
	int len=weishu(x);
	for(int i=0;i<len/2;i++)
		if((x%(int)pow(10.0,i+1))/(int)pow(10.0,i)			!=(x%(int)pow(10.0,len-1-i+1))/(int)pow(10.0,len-1-i))
			return false;
	return true;
}
int main()
{
	cout<<isPalindrome(121)<<endl;

	int x=121;
	int len=weishu(x);
	cout<<len<<endl;

	for(int i=0;i<len/2;i++)
	{
		cout<<(x%(int)pow(10.0,i+1))/(int)pow(10.0,i)<<endl;
		cout<<(x%(int)pow(10.0,len-1-i+1))/(int)pow(10.0,len-1-i)<<endl;
	}
	
}

  

 

leetcode_9题——Palindrome Number (数学问题)

标签:

原文地址:http://www.cnblogs.com/yanliang12138/p/4531062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!