请大神帮忙排错
查看原帖
请大神帮忙排错
636978
coco2012楼主2022/1/23 23:28

//
//  main.cpp
//  p2142
//
//  Created by eleca on 2022/1/22.
//

#include <iostream>
#include <string>
#include <algorithm>
#include <cmath>
#include <cstring>
using namespace std;
int main(int argc, const char * argv[]) {
    int A[10087]={0},B[10087]={0},C[10087];
    int jie=0;
    string a,b;
    string p;
    long len;
    cin>>a>>b;
    if (a.length()>b.length())
        len=a.length();
    else
        len=b.length();
    if (a==b){
        cout<<"0";
        return 0;
    }
    else if(a.length()<b.length()||(a.length()==b.length()&&a<b)){
        p=a;
        a=b;
        b=p;
        cout<<"-";
    }
    for(long i=a.length()-1,j=1;i>=0;i--,j++) {
        A[j]=a[i]-'0';
    }
    for(long i=b.length()-1,j=1;i>=0;i--,j++){
        B[j]=b[i]-'0';
    }
    for (long i=1;i<=len;i++){
        C[i]=A[i]-B[i]+jie;
        if (C[i]<0){
            C[i]+=10;
            jie=-1;
        }
        else if (C[i]>0){
            jie=0;
        }
    }
    for (long i=len;i>0;i--){//如果C[i]是0,就忽略
        if (C[i]!=0){
            cout<<C[i];
        }
    }
    return 0;
}
2022/1/23 23:28
加载中...