提交时间:2026-01-04 15:43:09
运行 ID: 81247
#include <iostream> #include <vector> #include <algorithm> using namespace std; string subtractLargeIntegers(const string& a, const string& b) { vector<int> result; int borrow = 0; int i = a.size() - 1, j = b.size() - 1; while (i >= 0 || j >= 0) { int digitA = (i >= 0) ? a[i--] - '0' : 0; int digitB = (j >= 0) ? b[j--] - '0' : 0; int diff = digitA - digitB - borrow; if (diff < 0) { diff += 10; borrow = 1; } else { borrow = 0; } result.push_back(diff); } while (result.size() > 1 && result.back() == 0) { result.pop_back(); } string finalResult; for (auto it = result.rbegin(); it != result.rend(); ++it) { finalResult += to_string(*it); } return finalResult; } int main() { string a, b; cin >> a >> b; string result = subtractLargeIntegers(a, b); cout << result; return 0; }