DrawnBreak

接受现实的基础上,向未来进发

Leetcode7 Submission Details

反转int型数字,123变321

本以为很简单,没想到暗含一条,若输出大于int的范围,则为0

我只能用最快捷的方法,全部转成long long型,每次将输出与int的最大值和最小值相比较,进行输出


int reverse(int x) {
        long long i,num[65],n,m,flag;
        long long max_num=2147483647,min_num=-2147483648;
        long long longx;
        longx=x;
        
        n=0;
        while(longx!=0)
        {
            num[n]=longx%10;
            longx=longx/10;
            n++;
        }
        
        m=1;
        for(i=n-1;i>=0;i--)
        {
            longx+=num[i]*m;
            m*=10;
        }
        
        if(longx>max_num||longx<min_num)
            return 0;
        else  return (int)longx;
        
    
}


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a799581229/article/details/52353387
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭