60pts 求调
查看原帖
60pts 求调
1120928
XuYu0317楼主2024/2/23 08:43

rt

#include <bits/stdc++.h>
using namespace std;

int a1[20010], b1[20010], c[20010];

int main() {
    char a[20010], b[20010];
    cin >> a >> b;
    
    int lena = strlen(a);
    int lenb = strlen(b);
    
    
    for (int i = 1; i <= lena; i++)
        a1[i] = a[lena - i] - '0';
    for (int i = 1; i <= lenb; i++)
        b1[i] = b[lenb - i] - '0';
    
    int lenc = max(lena, lenb);
    int flag = 0;
    
    
    for (int i = 1; i <= lenc; i++) {
        c[i] = a1[i] - b1[i] - flag;
        if (c[i] < 0) {
            flag = 1;
            c[i] += 10;
        } else {
            flag = 0;
        }
    }
    
    while (c[lenc] == 0 && lenc > 1)
        lenc--;
    
    
    for (int i = lenc; i >= 1; i--)
        cout << c[i];
    cout << endl;
    
    return 0;
}

2024/2/23 08:43
加载中...