20求调!
  • 板块P1303 A*B Problem
  • 楼主SH127
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/7/25 23:04
  • 上次更新2024/7/25 23:13:21
查看原帖
20求调!
1150267
SH127楼主2024/7/25 23:04
#include<string.h>
int main()
{
    char num1[2001],num2[2001];
    int numa[2001]={0},numb[2001]={0},numc[4005]={0};
    scanf("%s",num1);
    scanf(" %s",num2);  
    int lens1=strlen(num1),lens2=strlen(num2);
    for(int i=lens1-1;i>=0;i--){
        numa[lens1-1-i]=num1[i]-'0';
    }
    for(int i=lens2-1;i>=0;i--){
        numb[lens2-1-i]=num2[i]-'0';
    }

    int lens=lens1+lens2-1;
    for(int i=0;i<lens1;i++){
        for(int j=0;j<lens2;j++){
            numc[i+j]+=numa[i]*numb[j];
        }
    }

    int cin=0;
    for(int i=0;i<lens;i++){
        int temp=cin+numc[i];
        if(temp>9){
            numc[i]=temp-(temp/10)*10;
            cin=temp/10;
        }else cin=0;
    }
    //printf("%d %d",cin,lens);
    if(cin!=0){
        lens++;
        numc[lens-1]=cin;
    }
    if(numc[lens-1]==0) printf("0");
    else{
        for(int i=lens-1;i>=0;i--){
            printf("%d",numc[i]);
        }
    }
    return 0;
}
2024/7/25 23:04
加载中...