本地测试没有问题提交全wa,求解
查看原帖
本地测试没有问题提交全wa,求解
414510
cjl2580楼主2020/12/15 20:11
#include<stdio.h>
#include<string.h>
#define max(x,y) (x>=y)?x:y
//高精度加法 
int main()
{
    int a[100000]={0},b[100000]={0},len1,len2,j=0,s;
    char str[100000];

    gets(str);
    len1=strlen(str);
    for(int i=len1-1;i>=0;i--) a[j++]=str[i]-'0'; //从低到高存入数组
    gets(str);
    len2=strlen(str);
    j=0;
    for(int i=len2-1;i>=0;i--) b[j++]=str[i]-'0'; //同理
    int max=max(len1,len2);
    for(int i=0;i<max;i++){
        s=a[i]+b[i];
        if(s>=10){
            a[i]=s-10;
            a[i+1]+=1;
        }else{
            a[i]=s;
        }
    }
    for(int i=max;i>=0;i--){
    	if(i==max&&a[i]==0) continue;
        printf("%d",a[i]);}

    return 0;
}
2020/12/15 20:11
加载中...