您的位置:首页 > 其它

Reverse Integer

2015-08-31 23:36 531 查看


Reverse Integer

Total Accepted: 92759 Total
Submissions: 391368My Submissions

Question
Solution

Reverse digits of an integer.
Example1: x = 123, return 321

Example2: x = -123, return -321

#include<iostream>
#include<list>

using namespace std;

class Solution {
public:
int reverse(int x) {
const int MAX_1 = 2147483647;
const int MAX_2 = -2147483648;
if( x == MAX_2 || x == 0)
return 0;
bool IsNegative = false;
if( x < 0)
{
IsNegative = true;
x = -x;
}
list<char> num;
while(x)
{
char tmp = x % 10;
num.push_back( tmp );
x = x / 10;
}
long long l_re = 0;
long long mi = 1;
while( num.size()){
l_re += mi * num.back();
num.pop_back();
mi = mi * 10;
}
if( l_re > MAX_1)
return 0;
else
return IsNegative ? -l_re : l_re;

}
};

int main()
{
Solution solution;

cout<<solution.reverse(1534236469);
getchar();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: