@[BensonQAQ](/user/284066) 貌似你最后的进位没有输出?
by w23c3c3 @ 2020-10-21 20:30:50
@[BensonQAQ](/user/284066)
输入:
```
1 9
```
输出:
```
10
```
你的输出:
```
0
```
by Implicit @ 2020-10-21 20:31:12
@[LoveMC](/user/325613)
所以呢
by BensonQAQ @ 2020-10-21 20:38:52
@[w23c3c3](/user/109942)
输出了
不知道为什么输出0
by BensonQAQ @ 2020-10-21 20:40:10
@[BensonQAQ](/user/284066)
```cpp
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
string a,b;
char ja[501],jb[501],ds[502];
int la,lb,jag,jbg,dsg,jw,l,ls,g;
int main()
{
memset(ja,0,sizeof(ja));
memset(jb,0,sizeof(jb));
cin>>a>>b;
la=a.size();
lb=b.size();
int i;
for(i=la-1;i>=0;i--)
ja[la-i]=a[i];
for(int i=lb-1;i>=0;i--)
jb[lb-i]=b[i];
l=max(la,lb);
for(i=1;i<=l;i++)
{
if(ja[i]>='0'&&ja[i]<='9')
jag=ja[i]-'0';
else
jag=0;
if(jb[i]>='0'&&jb[i]<='9')
jbg=jb[i]-'0';
else
jbg=0;
dsg=jag+jbg+jw;
jw=0;
if(dsg>=10)
{
jw++;
g=dsg%10;
ds[i]=g+'0';
}
else
{
g=dsg%10;
ds[i]=g+'0';
}
} ++l; ds[l]=jw+'0'; // 加了!
for(i=l;i>=1;i--)
cout<<ds[i];
return 0;
}
```
改成这样就行了
by Implicit @ 2020-10-21 20:46:22
@[LoveMC](/user/325613)
你提交试试
变成了
WA WA AC WA WA
by BensonQAQ @ 2020-10-21 21:03:03
@[BensonQAQ](/user/284066)
```cpp
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
string a,b;
char ja[501],jb[501],ds[502];
int la,lb,jag,jbg,dsg,jw,l,ls,g;
int main()
{
memset(ja,0,sizeof(ja));
memset(jb,0,sizeof(jb));
cin>>a>>b;
la=a.size();
lb=b.size();
int i;
for(i=la-1;i>=0;i--)
ja[la-i]=a[i];
for(int i=lb-1;i>=0;i--)
jb[lb-i]=b[i];
l=max(la,lb);
for(i=1;i<=l;i++)
{
if(ja[i]>='0'&&ja[i]<='9')
jag=ja[i]-'0';
else
jag=0;
if(jb[i]>='0'&&jb[i]<='9')
jbg=jb[i]-'0';
else
jbg=0;
dsg=jag+jbg+jw;
jw=0;
if(dsg>=10)
{
jw++;
g=dsg%10;
ds[i]=g+'0';
}
else
{
g=dsg%10;
ds[i]=g+'0';
}
} ++l; ds[l]=jw+'0'; // 进位!
while(ds[l]=='0'&&l>1) --l; // 前导零!
for(i=l;i>=1;i--)
cout<<ds[i];
return 0;
}
```
by Implicit @ 2020-10-21 21:37:44