Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0.
Assume the environment does not allow you to store 64-bit integers (signed or unsigned).
Example 1:
Input: x = 123
Output: 321
Example 2:
Input: x = -123
Output: -321
Example 3:
Input: x = 120
Output: 21
Constraints:
-231 <= x <= 231 - 1
SOLUTION C++
class Solution {
public:
int reverse(int x) {
int num = x;
long int rev = 0;
while(num != 0){
int digit = num%10;
rev = 10*rev + digit;
if(rev > INT_MAX)return 0;//1
if(rev < INT_MIN)return 0;//2
num/=10;
}
return (int)rev;
}
};
LINE 1 AND 2 used due to if their is any negative values exist
Top comments (0)