额,还是大数问题,不难,就是,居然来一个这么变态的测试数据
1
0000
0000
0
输出 0
#include<iostream>
#include<math.h>
#include<string.h>
using namespace std;
int main()
{
char str[101];
int sum[110],j,k,cas,num;
num=0;
cin>>cas;
while(cas--)
{
if(num++) cout<<endl;
memset(sum,0,sizeof(sum));
while(cin>>str)
{
if(strcmp(str,"0")==0)
{
for(j=109;j>=0;j--)
if(sum[j]!=0) break;
if(j<0) {
cout<<0<<endl;
break;}
for(int i=j;i>=0;i--)
cout<<sum[i];
cout<<endl;
break;
}
j=k=0;
for(int i=strlen(str)-1;i>=0;i--)
{
k+=(str[i]-'0')+sum[j];
sum[j++]=k%10;
k/=10;
}
while(k)
{
k+=sum[j];
sum[j++]=k%10;
k/=10;
}
}
}
return 0;
}