题目

7. 整数反转

答案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution {
public:
int reverse(int x) {
int sum = 0;
while (x != 0) {
int temp = x % 10;
x /= 10;

if (sum > (INT_MAX / 10) || (sum == INT_MAX / 10 && temp > 7)) {
return 0;
}
if (sum < (INT_MIN / 10) || (sum == INT_MIN / 10 && temp < -8)) {
return 0;
}
sum = sum * 10 + temp;
}
return sum;
}
};

__END__