计蒜客-加一(高精度问题)
发布日期:2022-02-25 01:17:45 浏览次数:67 分类:技术文章

本文共 689 字,大约阅读时间需要 2 分钟。

数组内存放了一些个位数字,组成一个大数(从高位到低位),现在将这个数加 11,并输出加一以后的结果。

例如:

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

则结果为 [2,3,1,1,5][2,3,1,1,5]

A = [7,8,9]A=[7,8,9]

则结果为 [7,9,0][7,9,0]

输入格式

第一行输入一个正整数 n(1 \leq n \leq 100)n(1n100),接下来的一行,输入用空格分隔的 nn 个 00 到 99 的非负整数组成的数组 A[n]A[n]

输出格式

输出一行,nn 个用空格分隔的整数,表示加一后的新数组。

样例输入

58 9 9 9 9

样例输出

9 0 0 0 0

解题思路

这题没什么说的,只要注意一下9999+1=10000这组数据就行

#include
using namespace std;int main(){ int n; int sum; int a[1005]; int len,x; scanf("%d",&n); for(int i = n - 1;i >= 0;i--){ scanf("%d",&a[i]);//将数字倒序存在数组里 } x = 1; if(a[0] != 9){ a[0]++;//第一位不是9的话则不需要进位 }else{ a[0] = 0; for(int i = 1;i < n;i++){ //cout<<"*****"<
= 0;i--){ printf("%d ",a[i]); } return 0;}

转载地址:https://blog.csdn.net/qq_37755550/article/details/80158824 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Mysql select 中的子查询返回多个字段
下一篇:计蒜客-跳跃游戏

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年03月26日 14时13分28秒