高精度-高精度(信息学奥赛1169)

#include <iostream>
#include <cmath>
#include <vector>
using namespace std;
int main(){
    string a,b;
    cin>>a>>b;
    vector<int> x,y,sum;
    for(int i = a.size()-1;i>=0;i--){
        x.push_back(a[i]-'0');
    }
    for(int i = b.size()-1;i>=0;i--){
        y.push_back(b[i]-'0');
    }
    int j = 0;
    for(int i = 0;i<max(x.size(),y.size());i++){
        if(i>=y.size()){
            y.push_back(0);
        }
        if(y[i]>x[i]){
            x[i+1] -= 1;
            x[i] += 10;
        }
        j = x[i]-y[i];
        sum.push_back(j);
        j /= 10;
    }
    bool l = false;
    for(int i = sum.size()-1;i>=0;i--){
        if(sum[i]!=0 || l){
            cout<<sum[i];
            l = true;
        }
    }
    return 0;
}

 

 

posted @ 2024-06-01 16:00  王一行(小号)  阅读(8)  评论(0编辑  收藏  举报