为华写满1000题


私信TA

用户名:dotcpp0656572

访问量:631

签 名:

等  级
排  名 1813
经  验 2624
参赛次数 0
文章发表 5
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

#include<iostream>

#include<vector>

#include<string>

using namespace std;

const int N=1e5+10;

vector<int>add(vector<int>&A,vector<int>&B)

{

    if(A.size()<B.size())return add(B,A);// 把size()长的放在前面

    int t=0;

    vector<int>C; 

    for(int i=0;i<A.size();++i)

    {

        t+=A[i];

        if(i<B.size())t+=B[i];

        C.push_back(t%10);

        t/=10;

    }

    if(t)C.push_back(1);

    

    return C;

    

    

}

int main()

{

    

    string a,b;

    cin>>a>>b;

    vector<int>A,B,C;

    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');

    add(A,B);

    C=add(A,B);

  for(int i=C.size()-1;i>=0;--i)

  cout<<C[i];

    

    

}


 

0.0分

0 人评分

  评论区

  • «
  • »