#include<stdio.h>
#include<string.h>
char ca[5000],cb[5000];
int a[5000],b[5000];
int main()
{
int i,j,la,lb,flag;
gets(ca);gets(cb);
la=strlen(ca);lb=strlen(cb);
for(i=la,j=0;i>0;i--)
{
a[i]=ca[j++]-'0';
}
for(i=lb,j=0;i>0;i--)
{
b[i]=cb[j++]-'0';
}
if(la>=lb)
{
for(i=0;i<=la;i++)
{
a[i]+=b[i];
if(a[i]>9)
{
a[i]-=10;
a[i+1]++;
}
}
for(i=la+1,flag=0;i>0;i--)
{
if(flag||a[i])//用flag解决和比a多一位的情况
{
flag=1;
printf("%d",a[i]);
}
}
}
else
{
for(i=0;i<=lb;i++)
{
b[i]+=a[i];
if(b[i]>9)
{
b[i]-=10;
b[i+1]++;
}
}
for(i=lb+1,flag=0;i>0;i--)
{
if(flag||b[i])
{
flag=1;
printf("%d",b[i]);
}
}
}
return 0;
}
为什么自己在Devcpp里面算能过很多组数据(灰名下不了洛谷里面的数据),提交却一个都过不了呀?