题目

add-two-numbers


算法

* 直接模拟

* longlong

* /10


代码

直接模拟


class Solution {

public:

    int reverse(int x) {

        int res = 0;

        while (x != 0) {

            if (abs(res) > INT_MAX / 10) return 0;

            res = res * 10 + x % 10;

            x /= 10;

        }

        return res;

    }

};

longlong


class Solution {

public:

    int reverse(int x) {

        long long res = 0;

        while (x != 0) {

            res = 10 * res + x % 10;

            x /= 10;

        }

        return (res > INT_MAX || res < INT_MIN) ? 0 : res;

    }

};

/10


class Solution {

public:

    int reverse(int x) {

        int res = 0;

        while (x != 0) {

            int t = res * 10 + x % 10;

            if (t / 10 != res) return 0;

            res = t;

            x /= 10;

        }

        return res;

    }

};

results matching ""

    No results matching ""