LintCode 407: Plus One
2024-10-19 06:15:33
LintCode 407: Plus One
题目描述
给定一个非负数,表示一个数字数组,在该数的基础上+1
,返回一个新的数组。
该数字按照位权大小进行排列,位权最大的数在列表的最前面。
样例
给定 [1,2,3]
表示 123
, 返回 [1,2,4]
.
给定 [9,9,9]
表示 999
, 返回 [1,0,0,0]
.
Sat Feb 26 2017
思路
本题没什么特殊的地方,就是让你手算一个加一运算,用加法器的思想即可。
代码
// 加一
vector<int> plusOne(vector<int>& digits)
{
int carry = 0;
for (vector<int>::iterator iter = digits.end() - 1; iter >= digits.begin(); --iter)
{
int now = *iter + carry + (iter == digits.end() - 1 ? 1 : 0);
*iter = now % 10;
carry = now > 9;
}
if (carry) digits.insert(digits.begin(), 1);
return digits;
}
最新文章
- 如何生成每秒百万级别的 HTTP 请求?
- 更为简单的Ctrl+S自动刷新浏览器工具-LinrF5
- Fragment应用总结
- poj 1324 Holedox Moving
- php提示 Notice: Use of undefined constant name - assumed
- Probit回归模型
- 10169 - Urn-ball Probabilities !
- es6 语法
- Linux学习 -- 系统管理
- Parse Fatal Error at line 41 column 24: 元素类型 ";url-pattern"; 必须由匹配的结束标记 ";<;/url-pattern>;"; 终止
- 第1次作业:这是我的一个响亮的标题X!
- 合成/聚合复用原则(CARP)
- BBS论坛(三十三)
- finally最常用的情况
- .bat学习-基础语法(常用)
- H5 video标签视频加载存在的问题
- EL表达式经验教训 javax.el.PropertyNotFoundException 出错
- Python:virtualenv介绍
- Sersync实时备份服务部署实践
- Scala 实现快速排序和归并排序