题目意思就是将整数翻转过来
很简单就直接上代码:
class Solution {
public:
long long int reverse(int x) {
long long xCopy = x;
int a[50];
long long result = 0;
int flag;
if(x < 0){
flag = 0;
xCopy = -xCopy;
}else if(x == 0){
return result;
}else{
flag = 1;
}
//尾数搞出来
int index = 0;
while(xCopy!=0){
int endNum = xCopy % 10;
xCopy = floor(xCopy / 10);
a[index] = endNum;
index += 1;
}
int times = 0;
for(int i = index-1; i >= 0; i--){
result += a[i] * pow(10, times);
times += 1;
}
//负数情况
if(flag == 0){
result = result - 2 * result;
}
if(result > (pow(2, 31) - 1)) return 0;
if(result < (pow(-2, 31))) return 0;
return result;
}
};