码迷,mamicode.com
首页 > 其他好文 > 详细

计蒜客 加一(大数加1)

时间:2016-06-22 22:09:45      阅读:521      评论:0      收藏:0      [点我收藏+]

标签:

动态数组存放了一些个位数字(正数),组成一个大数。将这个数加1。

例如:

A = [2,3,1,1,4],

return [2,3,1,1,5]

A = [7,8,9],

return [7,9,0].

格式:

第一行输入一个正整数n,接下来的一行,输入数组A[n](每一位都是正数且为个位数)。

最后输出新的数组。

样例输入

5
8 9 9 9 9

样例输出

9 0 0 0 0
 1 #include <iostream>
 2 #include <vector>
 3 using namespace std;
 4 int main(){
 5     int n, flag = 1, temp, k;
 6     cin >> n;
 7     vector<int> v(n) , a(n+1, 0);
 8     for(int i = 0; i < n; i++)
 9         cin >> v[i];
10     int j = 0;
11     for(int i = n-1; i >= 0; i--){
12         temp = flag + v[i] ;
13         if(temp >= 10){
14             flag = 1;
15             temp -= 10;
16         } else{
17             flag = 0;
18         }  
19         a[j++] = temp;
20     }
21     a[j] = flag;
22     for(int j = n; j >= 0; j--){
23         if(a[j] != 0){
24              k = j;
25             break;
26         }
27     }
28     for(int l = k; l >= 0; l--)
29         cout << a[l] << " ";
30     return 0;
31 }

 

计蒜客 加一(大数加1)

标签:

原文地址:http://www.cnblogs.com/qinduanyinghua/p/5608671.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!