reverse integer(leetcode)

int reverse(int x) {
    int xx=x,y=0;//result
    int cnt=0,tmp=0; //cnt for digit
    bool flag=0;  //nagative:1

    if(x<0)  //
    {
        flag=1;
        if(x==-2147483648)
            return 0;
        else xx=-xx;
    }
    while(xx)
    {
        if((cnt==9)&&(y>214748364))  //y==214748364&&xx>7  is not possible
        {
            return 0;
        }
        y=y*10+xx%10;
        xx=xx/10;
        cnt++;
    }
    if(flag) y=-y;
    return y;
}

posted @ 2015-12-09 15:40  Sparrow6963  阅读(36)  评论(0)    收藏  举报