Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
111562 | 吴宗桦 | 高精度减法 | C++ | 通过 | 100 | 0 MS | 328 KB | 748 | 2023-11-22 16:34:35 |
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int main() { int a[5005],b[5005],c[5005],a2,b2,c2,x; char a1[5005],b1[5005],c1[5005]; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); cin>>a1>>b1; if(strlen(a1)<strlen(b1)||(strlen(a1)==strlen(b1)&&strcmp(a1,b1)<0)) { strcpy(c1,a1); strcpy(a1,b1); strcpy(b1,c1); cout<<"-"; } a2=strlen(a1);b2=strlen(b1); for(x=0;x<=a2-1;x++)a[a2-x]=int(a1[x]-'0'); for(x=0;x<=b2-1;x++)b[b2-x]=int(b1[x]-'0'); x=1; while(x<=a2||x<=b2) { if(a[x]<b[x]) { a[x]+=10; a[x+1]--; } c[x]=a[x]-b[x]; x++; } c2=x; while(c[c2]==0&&c2>1) c2--; for(x=c2;x>=1;x--) cout<<c[x]; cout<<endl; }