为什么占用时间和内存这么大?
查看原帖
为什么占用时间和内存这么大?
482138
ProgrammerVic楼主2022/9/3 18:11

虽然答案对了,但看到占用的时间和内存,我总觉得哪里有问题…… https://www.luogu.com.cn/record/85784899

#include <iostream>
#include <string>

using namespace std;

const int MAXN = 16777216;

int a[MAXN] = {0}, b[MAXN] = {0}, sum[MAXN] = {0};
string sa, sb;
bool flag = false;

int main() {
    cin >> sa >> sb;
    if (sa == "0" and sb == "0") {
        puts("0");
        return 0;
    }
    for (int i = 0; i < sa.length(); i++) {
        a[i] = sa[sa.length() - i - 1] - '0';
    }
    for (int i = 0; i < sb.length(); i++) {
        b[i] = sb[sb.length() - i - 1] - '0';
    }
    for (int i = 0; i < MAXN; i++) {
        sum[i] = a[i] + b[i];
    }
    for (int i = 0; i < MAXN; i++) {
        if (sum[i] >= 10) {
            sum[i + 1] += (sum[i] - (sum[i] % 10)) / 10;
            sum[i] %= 10;
        }
    }
    for (int i = MAXN - 1; i >= 0; i--) {
        if (sum[i] != 0) {
            flag = true;
        }
        if (flag) {
            cout << sum[i];
        }
    }
    cout << endl;
    return 0;
}
2022/9/3 18:11
加载中...