class Solution {
public:
int reverse(int x) {
int sign=1;
if(x<0)
{
sign=-1;
x=-x;
}
string s;
while(x)
{
s+=(x%10)+'0';
x/=10;
}
int res=0;
for(int i=0;i<s.length();i++)
{
if(res>(INT_MAX-s[i]+'0')/10)
{
res=0;
break;
}
res=res*10+s[i]-'0';
}
return res*sign;
}
};