高精

    科技2022-07-16  133

    #include<bits/stdc++.h> using namespace std; char a[501],b[501]; int a1[501],b1[501]; int c[501],c1; int main(){ int r; scanf("%s",a); scanf("%s",b); int n=strlen(a); int m=strlen(b); for(int i=0;i<n;i++)a1[n-i]=a[i]-48; for(int i=0;i<m;i++)b1[m-i]=b[i]-48; int cl=1; r=0; while( (c1<=n) || (c1<=m)) { c[c1]=a1[c1]+b1[c1]+r; r=c[c1]/10; c[c1]=c[c1]% 10; c1++; } c[c1]=r; if(c[c1]==0)c1--; for(int i=c1;i>=1;i--)cout<<c[i]; return 0; }

    #include<bits/stdc++.h> using namespace std; char a[10087],b[10087]; int na[10090], nb[10090], nc[10090]; int main() { cin>>a>>b; if((strlen(a)<strlen(b)) || ( strcmp(a,b)<0 && strlen(a)==strlen(b))) { swap(a,b); cout<<"-"; } int l1=strlen(a),l2=strlen(b),l3; for(int i=0;i<l1;i++) na[l1-i]=a[i]-'0'; for(int i=0;i<l2;i++) nb[l2-i]=b[i]-'0'; for(int i=1;i<=l1||i<=l2;i++) { if(na[i]<nb[i]) { na[i+1]--; na[i]+=10; } nc[i]=na[i]-nb[i]; l3=i; } while(nc[l3]==0&&l3>1) l3--; for(int i=l3;i>0;i--)cout<<nc[i]; return 0; }

    #include <iostream> #include <cstring> using namespace std; int a[300], b[300], c[300]; char s1[300], s2[300], s3[300]; int main() { cin >> s1 >> s2; int la, lb, len; la = strlen(s1); lb = strlen(s2); for(int i=1;i<=la;i++) a[i] = s1[la-i] - 48; for(int i=1;i<=lb;i++) b[i] = s2[lb-i] - 48; for(int i=1;i<=la;i++) for(int j=1;j<=lb;j++) { c[i+j-1] = c[i+j-1] + a[i] * b[j]; c[i+j] = c[i+j] + c[i+j-1]/10; c[i+j-1] = c[i+j-1] % 10; } len = la + lb; while(c[len]==0 && len>1) len--; for(int i=len;i>=1;i--) cout << c[i]; return 0; }
    Processed: 0.009, SQL: 8