社区讨论
65ptcs求调
P2142高精度减法参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mk7qhz8s
- 此快照首次捕获于
- 2026/01/10 11:17 上个月
- 此快照最后确认于
- 2026/01/12 18:25 上个月
CPP
#include <bits/stdc++.h>
using namespace std;
string s1 , s2;
int na[10100] , nb[10100] , ans[10100];
string del(string a , string b){
bool f;
if ((a < b && a.size() == b.size()) || a.size() < b.size()) swap(a,b) , f = 1;
for (int i = a.size() ; i >= 1 ; i--) na[i] = a[a.size()-i] - '0';
for (int i = b.size() ; i >= 1 ; i--) nb[i] = b[b.size()-i] - '0';
int len = max(a.size(),b.size());
for (int i = 1 ; i <= len ; i++){
if (na[i] < nb[i]) na[i+1]-- , na[i] += 10;
ans[i] = na[i] - nb[i];
}
while (ans[len] == 0) len--;
string anss;
for (int i = 1 ; i <= len ; i++) anss = (char)(ans[i]+'0') + anss;
if (f) anss = '-' + anss;
if (len < 1) anss = "0";
return anss;
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin >> s1 >> s2;
cout << del(s1,s2);
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...