zoukankan      html  css  js  c++  java
  • LeetCode

    反转数字,考虑溢出的情况。直接返回零(好坑啊)。

    public class Solution {
        public int reverse(int x) {
            if(x == 0)
                return 0;
            StringBuilder sb = new StringBuilder(Math.abs(x)+"");
            int flag = 1;
            if(x < 0)
                flag = -1;
            //System.out.println(sb);
                
            StringBuilder ans = new StringBuilder(sb.reverse());
            long anss = 0;
            for(int i=ans.length()-1; i>=0; i--) {
                anss += (long)(ans.charAt(i)-'0') * pow(10L, ans.length()-1-i);
            }
           // System.out.println(anss);
            if(anss > 2147483647L || (flag==-1 && anss > 2147483648L))  {
                return 0;
            }
            
            return (int) (anss * flag);
            
        }
        public long pow(long l, int m) {
            long ans = 1;
            for(int i=0; i<m; i++) {
                ans *= l;
            }
            //ans = Math.abs(ans);
            return ans;
        }
    }
  • 相关阅读:
    CF1270H
    CF1305G
    LeetCode-Sqrt(x)
    LeetCode-Plus One
    LeetCode-Integer to Roman
    LeetCode-Roman to Integer
    LeetCode-String to Integer (atoi)
    LeetCode-Reverse Integer
    C++
    LeetCode-Gray Code
  • 原文地址:https://www.cnblogs.com/wxisme/p/4382577.html
Copyright © 2011-2022 走看看