60分

P1601 A+B Problem(高精)

没有特判前导0应该
by rnfmabj5114 @ 2023-10-04 13:09:18


```cpp #include <bits/stdc++.h> using namespace std; int a[510],b[510],c[510],Ans[1100]={},Lena,Lenb; void Reada(){ string cur; cin>>cur; Lena = cur.length(); for(int i=0;i<Lena;i++){ a[i]=cur[i]-48; } reverse(a,a+Lena); } void Readb(){ string cur; cin>>cur; Lenb = cur.length(); for(int i=0;i<Lenb;i++){ b[i]=cur[i]-48; } reverse(b,b+Lenb); } int main(){ Reada(); Readb(); int Len_Ans=max(Lena,Lenb); for(int i=0;i<=Len_Ans;i++){ Ans[i]=a[i]+b[i]+c[i]; if(Ans[i]>=10){ c[i+1]=1; Ans[i]-=10; } } while(Ans[Len_Ans]>0) Len_Ans++; for(int i=Len_Ans-1;i>=0;i--){ cout<<Ans[i]; } return 0; } ``` 我的代码
by rnfmabj5114 @ 2023-10-04 13:11:19


@[YYPanda233](/user/1024296) 输出前加上这一句 ```cpp while(!c[len-1]&&len>1) --len; ```
by WxjzKK @ 2023-10-04 13:13:23


懂了懂了,感谢大佬解答!
by YYPanda233 @ 2023-10-04 14:30:37


|