Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
106580 江婉儿 高精度减法 C++ 解答错误 60 0 MS 340 KB 1318 2023-10-13 13:38:07

Tests(18/30):


#include<bits/stdc++.h> using namespace std; int a[10000],b[10000],c[10000]; char a1[10000],b1[10000]; int main() { cin>>a1>>b1; int len1,len2,len3,len4; for(len1=1;len1<=strlen(a1);len1++) a[len1]=a1[strlen(a1)-len1]-'0'; for(len2=1;len2<=strlen(b1);len2++) b[len2]=b1[strlen(b1)-len2]-'0'; if(a>=b) { for(len3=1;len3<=strlen(a1)||len3<=strlen(b1);len3++) { if(a[len3]>=b[len3]) c[len3]=a[len3]-b[len3]; else { if(a[len3+1]!=0) { a[len3]+=10; a[len3+1]-=1; c[len3]=a[len3]-b[len3]; } else { int d=len3+1; for( ;a[d]==0;d++) a[d]=9; a[d]-=1; a[len3]+=10; c[len3]=a[len3]-b[len3]; } } } } else { cout<<"-"; for(len3=1;len3<=strlen(b1)||len3<=strlen(a1);len3++) { if(b[len3]>=a[len3]) c[len3]=b[len3]-a[len3]; else { if(b[len3+1]!=0) { b[len3]+=10; b[len3+1]-=1; c[len3]=b[len3]-a[len3]; } else { int d=len3+1; for( ;b[d]==0;d++) b[d]=9; b[d]-=1; b[len3]+=10; c[len3]=b[len3]-a[len3]; } } } } len4=strlen(a1)>=strlen(b1)?strlen(a1):strlen(b1); for( ;len4>1;len4--) { if(a[len4]!=0) break; } for( ;len4>=1;len4--) cout<<c[len4]; return 0; }


测评信息: