class Solution {
public:
int strToInt(string str) {
long long k=0,f=1;
while(k<str.size()&&str[k]==' ') k++;
if(k<str.size()&&str[k]=='-')
{
k++;f=-1;
}
if(k<str.size()&&str[k]=='+') k++;
long long m=0;
while(k<str.size()&&str[k]<='9'&&str[k]>='0')
{
m=m*10+str[k]-'0';
k++;
if(m>1e10) break;
}
m*=f;
if(m>INT_MAX) return INT_MAX;
if(m<INT_MIN) return INT_MIN;
return m;
}
};