#include <algorithm> #include <any> #include <iostream> using namespace std; int main() { string num1,num2; cin>>num1>>num2; // 确保num1是较长的数字 if (num1.length() < num2.length()) swap(num1, num2); string result = ""; int carry = 0; int diff = num1.length() - num2.length(); // 从右向左加每一位数字 for (int i = num1.length() - 1; i >= 0; i--) { int sum = (num1[i] - '0'); if (i - diff >= 0) sum += (num2[i - diff] - '0'); sum += carry; carry = sum / 10; result.push_back(sum % 10 + '0'); } // 如果存在剩余进位,添加进位 if (carry) result.push_back(carry + '0'); // 反转结果 reverse(result.begin(), result.end()); cout<<result; return 0; } // 64 位输出请用 printf("%lld")