文章

18

粉丝

0

获赞

70

访问

3.2k

头像
大整数加法 题解:c++string
P1474 武汉大学机试题
发布于2026年2月11日 15:28
阅读数 177

#include<bits/stdc++.h>

using namespace std;
//string是由一个个char组成
string add(string a,string b){
    int la=a.size(),lb=b.size();
    //处理前导0,如00001321+001215
    int real=0;
    while(a[real]==0&&real<la){
        real++;
    }
    la=la-real;
    real=0;
    while(b[real]==0&&real<lb){
        real++;
    }
    lb=lb-real;

 

    if(la<lb) {

    swap(a,b);//a总是保存更长的字符串

    swap(la,lb);

    }
    string res(la,0);//初始化长度为la,全为0
    b.insert(0,la-lb,'0');//insert操作

//开始相加

    int jinwei=0;

    for(int i=la-1;i>=0;--i){
        int temp=a[i]-'0'+b[i]-'0'+jinwei;//转换
        jinwei=temp/10;
        res[i]...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发