0分求调
查看原帖
0分求调
1380067
your_bug_fired楼主2024/10/15 18:22

自己试了几个数据都对了,放上去一跑0分(悲)

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

#define ll long long

int a[2010] = {0}, b[2010] = {0};
ll ans[(int)4e6 + 100];

int main(){
    string x,y;
    getline(cin, x, '\n');
    getline(cin, y, '\n');
    for(int i = x.length() - 1; i >= 0; i--){
        a[x.length() - 1 - i] = x[i] - '0';
    }
    for(int i = y.length() - 1; i >= 0; i--){
        b[y.length() - 1 - i] = y[i] - '0';
    }
    for(int i = 0; i < x.length(); i++){
        for(int j = 0; j < y.length(); j++){
            ans[i + j] += a[i] * b[j];
        }
    }
    for(int i = 0; i < y.length() + x.length(); i++){
        ans[i + 1] += ans[i] /10;
        ans[i] %= 10;
    }
    int era = 0;
    for(int i = 4e6 + 10; i >= 0; i--){
        if(ans[i]) era = 1;
        if(era) cout<<ans[i];
    }
    if(era == 0) cout<<0;
    return 0;
}
2024/10/15 18:22
加载中...