AcWing
  • 首页
  • 题库
  • 题解
  • 分享
  • 问答
  • 活动
  • 应用
  • 吐槽
  • 登录/注册

AcWing 87. 把字符串转换成整数-语法题-C++    原题链接    中等

作者: 作者的头像   Struggle ,  2020-05-23 11:43:05 ,  阅读 452


0


class Solution {
public:
    int strToInt(string str) {
        int size=str.size();
        long long numeric=0;
        bool is_positive=true;
        vector<int> temp;

        if(isalpha(str[0])) return 0;
        for(int i=0;i<size;i++)
        {
            if(str[i]!=' ')
            {
                if(str[i]=='-') is_positive=false;
                else if(str[i]=='+');
                else if(str[i]>='0' && str[i]<='9' )
                {
                    temp.push_back((str[i]-'0'));
                }
            }
        }
        for(int i=0,max_bit=temp.size()-1;i<temp.size();i++)
        {
            numeric+=pow(10,max_bit--)*temp[i];
        }
        if(numeric==0) return 0;
        else if(numeric<INT_MIN) return INT_MIN;
        else if(numeric>INT_MAX) return is_positive?INT_MAX:INT_MIN;
        return is_positive?numeric:-numeric;
    }
};

0 评论

你确定删除吗?

© 2018-2021 AcWing 版权所有  |  京ICP备17053197号-1
联系我们  |  常见问题
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标
请输入绑定的邮箱地址
请输入注册信息