第三例:
11111111111111111111111111
9999999999999999999999999999999999
我的本地答案:
10000000011111111111111111111111110
本地计算出来是正确的,但是提交有错误
Wrong Answer.wrong answer On line 1 column 2, read 8, expected 0
by cccwwwzzz @ 2023-03-06 20:15:40
@[cccwwwzzz](/user/946249) 数组没有清零。本地和测评机不太一样,具体原理我不懂,但是解决方案
0. c=a+b
1. 在main函数外定义数组
2. 定义数组后memset清零
by xiaozengX @ 2023-03-06 20:20:55
```
#include<bits/stdc++.h>
using namespace std;
const int N=2000;
int a[N],b[N],c[N];
string al,bl;
int main(){
int a1,b1,c1=1,x=0;
cin>>al>>bl;
a1=al.size();b1=bl.size();
for(int i=0;i<=a1-1;i++) a[a1-i]=al[i]-48;
for(int i=0;i<=b1-1;i++) b[b1-i]=bl[i]-48;
while(c1<=a1||c1<=b1){
c[c1]=a[c1]+b[c1]+x;
x=c[c1]/10;
c[c1]%=10;
c1++;
}
c[c1]=x;
while(c[c1]==0&&c1>1) c1--;
for(int i=c1;i>=1;i--) cout<<c[i];
return 0;
}
```
by Seapeac @ 2023-03-06 20:37:56
@[xiaozengX](/user/321529) 多谢!
第1 亲测点有用 !
by cccwwwzzz @ 2023-03-06 21:03:20
```c
#include<bits/stdc++.h>
using namespace std;
string a,b;
int main() {
cin>>a>>b;
int x[10000];
int y[10000];
int c[20100];
for(int i =0; i<a.size(); i++) {
x[i]=a[a.size()-1-i]-'0';
}
for(int j =0; j<b.size(); j++) {
y[j]=b[b.size()-1-j]-'0';
}
int len = max(a.size(),b.size());
for(int n=0; n<len; n++) {
c[n] +=x[n]+y[n];
if(c[n]>=10) {
c[n+1] = c[n]/10;
c[n]%=10;
}
}
len +=1;
while(c[len-1]==0&& len>1) {
len--;
}
for(int i =len-1; i>=0; i--) {
cout<<c[i];
}
return 0;
}
```
by Ironaaa @ 2023-03-13 11:18:40