思路:因为a,b≤10 的五百次方数据远远大于long long型
所以我们应该使用数组或字符串模拟计算过程
以下使用字符串模拟
写代码时的注意点:
1.考虑数字长度不同和相同两种情况
2.考虑进位问题
3.考虑数字长度不同时,较长的字符串加上较短的字符串时连续进位。
(例99999+1和1+99999)
#include<bits/stdc++.h>
using namespace std;
#include<string>
#include<iostream>
int main()
{
string a;//整体思路,将字符串反转,单独计算每个字符,大于10,往后一位加1
string b;//长度相同时比较简单,长度不同时 需要多考虑第一个while循环后,连续进位,所以再使用一个while循环来进位
string c="";
string temp;//当a与b大小不同时,把较长的字符串付给temp字符串
cin>>a>>b;
reverse(a.begin(),a.end());
reverse(b.begin(),b.end());//反转数字用于从后往前计算