hack

P1601 A+B Problem(高精)

@[van_Dijk](/user/644697) 题目描述中有**不用考虑负数**,1001没有
by AfterFullStop @ 2023-09-01 16:22:03


不用考虑负数
by AF0x3b800001 @ 2023-09-01 16:22:30


@[ChrysanthBlossom](/user/555065) 谢谢
by van_Dijk @ 2023-09-01 16:22:35


但是 ``` #include<bits/stdc++.h> using namespace std; int a[1000001],b[1000001],c[1000001],j; bool x=false; char s[1000001],ss[1000001]; int main() { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c));//初始化 scanf("%s%s",s,ss);//读入两个数 a[0]=strlen(s); b[0]=strlen(ss);//获取长度 for(int i=1; i<=a[0]; i++) a[i]=s[a[0]-i]-'0'; for(int i=1; i<=b[0]; i++) b[i]=ss[b[0]-i]-'0';//转化为数字 for(j=1; j<=max(a[0],b[0])+1; j++) { c[j]=a[j]+b[j]; if(c[j]>=10) { c[j]%=10; a[j+1]++; } }//模拟加法 c[0]=j; if(c[j+1]>0) c[0]++;//特判进位 for(int i=c[0]; i>=1; i--) {//输出(删除前导零) if(x==false&&c[i]==0) continue; x=true; cout<<c[i]; } if(x==false) cout<<0;//一重保险 printf("\n");//二重保险 return 0;//三重保险 } ``` 这份代码只有50分,第五篇
by van_Dijk @ 2023-09-01 16:24:18


[这也是](https://www.luogu.com.cn/blog/WebOfArachnidaKing/solution-p1601)
by van_Dijk @ 2023-09-01 16:27:07


|