求助……

P1303 A*B Problem

Benny_Li @ 2022-10-27 11:23:03

#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
class number{
    public:
        int length,real[2000];
        number(){
            memset(real,0,sizeof(real)),length=0;
        }
        void read(const char *str){
            memset(real,0,sizeof(real));
            length=strlen(str);
            for(int i=0;i<length;++i){
                real[i]=str[length-i-1]-'0';
            }
        }
        void print(){
            for(int i=0;i<length;++i){
                printf("%c",real[length-i-1]+'0');
            }
        }
        string to_str(){
            string res;
            for(int i=0;i<length;++i){
                res=(char)(real[i]+'0')+res;
            }
            return res;
        }
    protected:
        friend number operator+(number x,number y){
            number res;
            res.length=max(x.length,y.length)+1;
            for(int i=0;i<res.length;++i){
                res.real[i]+=x.real[i]+y.real[i];
                res.real[i+1]+=res.real[i]/10;
                res.real[i]%=10;
            }
            while(!res.real[res.length-1]&&res.length-1)--res.length;
            return res;
        }
        friend number operator*(number x,number y){
            number res;
            res.length=x.length+y.length;
            for(int i=0;i<x.length;++i){
                for(int j=0;j<y.length;++j){
                    res.real[i+j]+=x.real[i]*y.real[j];
                    res.real[i+j+1]+=(res.real[i+j]/10);
                    res.real[i+j]%=10;
                }
            } 
            while(!res.real[res.length-1]&&res.length-1)--res.length;
            return res;
        }
}; 
number a,b;
char str[2000];
int main(){
    scanf("%s",&str);
    a.read(str);
    scanf("%s",&str);
    b.read(str);
    printf("%s",(a*b).to_str().c_str());
    return 0; 
}

最后一个点WA了……


by Kevin_Mamba @ 2022-10-27 11:34:28

若你是只想刷题,就用 python

a=int(input())
b=int(input())
print(a*b)

by Benny_Li @ 2022-10-27 11:37:41

@2124Kobe ……

我已经ac过了,这是拓展……


|