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

AcWing 87. 把字符串转换成整数    原题链接    中等

作者: 作者的头像   Value ,  2020-02-14 19:21:56 ,  阅读 239


1


C++ 代码

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

0 评论

你确定删除吗?

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