脚本宝典收集整理的这篇文章主要介绍了1168:大整数加法,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
传送门:http://yBT.ssoier.cn:8088/PRoblem_show.PHP?pid=1168
用字符将其读入,随后倒记在整数数组(一位一个数字)中(避免没地方好进位),加后进位,最后去掉多余的零,OK
1 #include<iostream> 2 #include<cstring> 3 #define N 210 4 using namespace std; 5 int as[N],bs[N],lena,lenb; 6 string a,b; 7 int main(){ 8 cin>>a>>b; 9 lena=a.size(); 10 lenb=b.size(); 11 for(int i=0;i<lena;i++)as[i]=a[lena-i-1]-‘0‘; 12 for(int i=0;i<lenb;i++)bs[i]=b[lenb-i-1]-‘0‘; 13 int length=max(lena,lenb); 14 for(int i=0;i<length;i++)as[i]+=bs[i]; 15 for(int i=0;i<length;i++){ 16 if(as[i]>9){ 17 as[i+1]++; 18 as[i]-=10; 19 if(i==length-1)length++; 20 } 21 } 22 while(length&&as[length]==0)length--; 23 for(int i=length;i>=0;i--)cout<<as[i]; 24 cout<<endl; 25 }
以上是脚本宝典为你收集整理的1168:大整数加法全部内容,希望文章能够帮你解决1168:大整数加法所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。