Given a 32-bit signed integer, reverse digits of an integer.

Example 1:

Input: 123
Output: 321

Example 2:

Input: -123
Output: -321

Example 3:

Input: 120
Output: 21

Note:
Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231,  231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.

 

 


 


#include 
using namespace std;


int reverse(int x) 
{
	int ans = 0;
	while (x)
	{
		int temp = ans * 10 + x % 10;
		if (temp / 10 != ans)
			return 0;
		ans = temp;
		x /= 10;
	}
	return ans;
}


int main()
{
	int ans = 0; 
	while (1)
	{
		cin >> ans;
		cout << reverse(ans) << endl;
	}
}

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Eric 的頭像
    Eric

    一個小小工程師的心情抒發天地

    Eric 發表在 痞客邦 留言(0) 人氣()