Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
143774 | 陈家宝 | 高精度加法 | C++ | 通过 | 100 | 0 MS | 268 KB | 530 | 2024-04-18 13:43:15 |
#include<bits/stdc++.h> using namespace std; int a[5010],b[5010],c[5010],al,bl,cl; string sa,sb; inline void add(){ cl=max(al,bl); for(int i=1;i<=cl;++i){ c[i]=c[i]+b[i]+a[i]; if(c[i]>=10){ c[i+1]=1; c[i]-=10; } } if(c[cl+1]>0)cl+=1; } int main(){ getline(cin,sa); al=sa.size(); getline(cin,sb); bl=sb.size(); for(int i=0;i<al;++i)a[i+1]=sa[al-i-1]-'0'; for(int i=0;i<bl;++i)b[i+1]=sb[bl-i-1]-'0'; add(); while(cl>1&&c[cl]==0)cl-=1; for(int i=cl;i>=1;--i)cout<<c[i]; return 0; }