| 题目名称 | 37. 增强的加法问题 |
|---|---|
| 输入输出 | add.in/out |
| 难度等级 | ★ |
| 时间限制 | 1000 ms (1 s) |
| 内存限制 | 128 MiB |
| 测试数据 | 10 |
| 题目来源 |
|
| 开放分组 | 全部用户 |
| 提交状态 | |
| 分类标签 | |
| 查看题解 | 分享题解 |
| 通过:1104, 提交:2350, 通过率:46.98% | ||||
|
|
100 | 0.000 s | 0.00 MiB | Pascal |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | Pascal |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
|
|
100 | 0.000 s | 0.00 MiB | C++ |
| 本题关联比赛 | |||
| 基本练习 | |||
| NOIP2015普及组练习 | |||
| 关于 增强的加法问题 的近10条评论(全部评论) | ||||
|---|---|---|---|---|
|
本蒟蒻不会加法,hhh
| ||||
|
程序真水
| ||||
|
ac答案
#include<bits/stdc++.h> using namespace std; int main(){ freopen("add.in","r",stdin); freopen("add.out","w",stdout); char a[111],b[111]; int a1[111],b1[111],c1[111],lena,lenb,lenc,x; memset(a1,0,sizeof(a1)); memset(b1,0,sizeof(b1)); memset(c1,0,sizeof(c1)); gets(a); gets(b); lena=strlen(a); lenb=strlen(b); for (int i=0;i<lena;i++) { a1[lena-i]=a[i]-48; } for(int i=0;i<lenb;i++) { b1[lenb-i]=b[i]-48; } lenc=1; x=0; while(lenc<=lena||lenc<=lenb) { c1[lenc]=a1[lenc]+b1[lenc]+x; x=c1[lenc]/10; c1[lenc]%=10; lenc++; } c1[lenc]=x; if(c1[lenc]==0) { lenc--; } for(int i=lenc;i>=1;i--) { cout<<c1[i]; } cout<<endl; }
2018-07-01 20:42
31楼
| ||||
|
边界的进位.gif
2017-11-02 09:47
30楼
| ||||
|
这道题Pascal有两种算法过,一种是新建Boolean判定进位,第二种思想与前一种相似但是个人感觉更精简,不过思路也更难(zhi)想(zhang)。如下:
或者是
2017-08-18 23:44
29楼
| ||||
|
记得清零初值,清零,清零,清零!!!!!!!!!!!!!!!!!!!!!!!!!!
| ||||
|
一晚上手写大整数封装,加减乘除大小等加上取模,不要白不要
| ||||
|
呵呵
| ||||
|
| ||||
|
memset用时要加#include《string.h》
| ||||