文章

5

粉丝

0

获赞

33

访问

1.3k

头像
大整数加法 题解:c++
P1474 武汉大学机试题
发布于2026年1月6日 11:48
阅读数 238

#include <bits/stdc++.h>
using namespace std;


int main()
{
    string a,b;
   while(cin>>a>>b)
{    
    
    vector<int> A,B;
    for(int i=a.size()-1;i>=0;i--) A.push_back(a[i]-'0');
    for(int i=b.size()-1;i>=0;i--) B.push_back(b[i]-'0');
    
    vector<int> C;//定义一个新数组保存结果
    int t=0; //进位
    for(int i=0;i<A.size()||i<B.size();i++)
    {
        if(i<A.size())t+=A[i];
        if(i<B.size())t+=B[i];
        C.push_back(t%10);
        t/=10;//更新进位
        
    }
    if(t)//如果最后一位还有进位,那t肯定不为0,最高位要置为1,因为是倒着存储大数
    C.push_back(1);
    
    for(int i=C.size()-1;i>=0;i--)
    cout<<C[i];
    cout<<endl;
}
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发