Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
106034 曾煦翔 高精度减法 C++ 通过 100 0 MS 264 KB 690 2023-10-09 13:33:28

Tests(30/30):


#include<bits/stdc++.h> using namespace std; string a1 , b1; int a[5005] , b[5005] , c[5005]; int main() { int lena , lenb , lens; cin >> a1 >> b1; if(a1.length() < b1.length() || a1.length() == b1.length() && a1 < b1) { swap(a1 , b1); cout << '-'; } lena = a1.length(); lenb = b1.length(); lens = max(lena,lenb); for(int i = 1;i <= lena;i++) a[i] = a1[lena - i] - 48; for(int i = 1;i <= lenb;i++) b[i] = b1[lenb - i] - 48; for(int i = 1;i <= lens;i++) { if(a[i] < b[i]) { a[i + 1]--; a[i] += 10; } c[i] = a[i] - b[i]; } while(!c[lens] && lens > 1) lens--; for(int i = lens;i >= 1;i--) cout << c[i]; return 0; }


测评信息: