Leetcode-回文数

3.回文数

题目内容:

Leetcode-回文数

思路与代码:

注意溢出问题。

class Solution {
public:
    bool isPalindrome(int x) {
        #define Max 2147483648
        //负数肯定不是回文数,0-9的数肯定是回文数
        if(x<0)
            return false;
        if(x>0&&x<10)
            return true;
        int inverse=0;
        int n;
        int ori=x;
        while(x>0)
        {
            if(inverse!=0&&Max/inverse<10)  //判断是否溢出
            {
                return false;
                break;
            }
            n=x%10;    
            inverse=inverse*10+n;
            x/=10;
        }
        if(inverse==ori) 
            return true;
        else 
            return false;
        
    }
};