题目描述
给定两个正整数, 计算它们的和.
输入格式
共两行, 每行包含一个整数.
输出格式
共一行, 包含所求的和.
数据范围
1≤整数长度≤100000
输入样例
12 23
输出样例
35
题目思路
低角标存低位, 高角标存高位; 依次进位
- #include<iostream>
- #include<string>
- #include<vector>
- using namespace std;
- vector<int> add(vector<int> &A,vector<int> &B)
- {
- if(A.size()<B.size()) return add(B,A);
- vector<int> C;
- int t = 0;
- for(int i=0;i<A.size();i++)
- {
- if(i<B.size()) t += B[i];
- t += A[i];
- C.push_back(t%10);
- t/=10;
- }
- if(t)C.push_back(t);
- 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');
- C = add(A,B);
- for(int i=C.size()-1;i>=0;i--)printf("%d",C[i]);
- return 0;
- }
来源: http://www.bubuko.com/infodetail-3399177.html