[AcWing 87] 把字符串转换成整数
2024-09-08 01:55:03
点击查看代码
class Solution {
public:
int strToInt(string str) {
int k = 0;
while (k < str.size() && str[k] == ' ') k++;
long long res = 0;
int minus = 1;
if (k < str.size()) {
if (str[k] == '-') minus *= -1, k++;
else if (str[k] == '+') k++;
}
while (k < str.size() && str[k] >= '0' && str[k] <= '9') {
res = res * 10 + str[k] - '0';
if (res > 1e11) break;
k++;
}
res *= minus;
if (res > INT_MAX) res = INT_MAX;
if (res < INT_MIN) res = INT_MIN;
return res;
}
};
- 每条边界条件都要处理好;
- res 定义为 long long;
- minus 用于记录正负;
- res 在 while 中用于记录结果的绝对值,当 res 很大 (res > 1e11) 时退出 while;
最新文章
- 【Hibernate框架】三种继承映射
- canvas画布属性globalAlpha 和 createRadialGradient函数出现的设置问题
- plsql记住登录密码
- MARKDOWN--介绍http://www.jianshu.com/p/q81RER
- HeadFirst jsp 03 (MVC)
- 【转】Python实现的线程池
- poj 1679 http://poj.org/problem?id=1679
- bzoj1858: [Scoi2010]序列操作
- C 语言控制台实现五子棋项目
- ZOJ 3490 String Successor
- Thinkphp 控制器
- Swift——(一)为Swift内置类型加入属性
- 我的EJB学习历程
- Java中精确的数字计算类BigDecimal
- Windows下根据端口号查找进程并关闭
- 【打CF,学算法——三星级】Codeforces Round #313 (Div. 2) C. Gerald&;#39;s Hexagon
- JavaScript基础函数---李老师的
- Protobuf数据类型
- 20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础
- java基础---->;git的使用(一)
热门文章
- Maven项目报错:“No goals have been specified for this build”解决办法
- 说说&;和&;&;的区别?
- 三、MyCat主要配置介绍
- elasticsearch 索引数据多了怎么办,如何调优,部署 ?
- 机器学习之近邻算法模型(KNN)
- (stm32f103学习总结)—ADC模数转换实验
- 前端系列——快速理解babel6配置过程
- AcWing 1047. 糖果
- golang 中 sync.Mutex 的实现
- python---选择排序的实现