读书人

hdu 1047,一直PE,请大家伙儿帮忙看看

发布时间: 2012-09-18 16:21:42 作者: rapoo

hdu 1047,一直PE,请大家帮忙看看。
http://acm.hdu.edu.cn/showproblem.php?pid=1047
以下是代码:

#include<iostream>
#include<string>
using namespace std;
char a[102];
int sum1[10005],sum2[102];

int main()
{
int n,i,j,k,l;
scanf("%d",&n);
cin.get();
while(n--)
{
cin.get();
memset(sum1,0,sizeof(sum1));
scanf("%s",a);
if(strcmp(a,"0")==0)
{
printf("0\n");
continue;
}
k=0;
for(i=strlen(a)-1;i>=0;i--)
sum1[k++]=a[i]-'0';

while(scanf("%s",a)&&strcmp(a,"0")!=0)
{
memset(sum2,0,sizeof(sum2));
j=0;
for(i=strlen(a)-1;i>=0;i--)
sum2[j++]=a[i]-'0';
for(i=0;i<j;i++)
sum1[i]+=sum2[i];
}

for(i=0;i<=10002;i++)
{
if(sum1[i]>=10)
{
sum1[i+1]+=sum1[i]/10;
sum1[i]%=10;
}
}
for(i=10002;i>=0;i--)
if(sum1[i]!=0)break;
for(int h=i;h>=0;h--)
printf("%d",sum1[h]);
printf("\n");
if(n)printf("\n");
}
return 0;
}


[解决办法]
汗啊,因为这个问题pe了6次。

读书人网 >C++

热点推荐