#include<stdio.h>
int river1[1000000],river3[1000000],river9[1000000];
int main()
{
int n,a,t,sum,i=1;
a=1,river1[1]=1;
while(a<=16384)
{
t=a,sum=0;
while(t!=0)
{
sum+=t%10;
t/=10;
}
a+=sum;
i++;
river1[i]=a;
}
a=3,river3[1]=3;
while(a<=16384)
{
t=a,sum=0;
while(t!=0)
{
sum+=t%10;
t/=10;
}
a+=sum;
i++;
river3[i]=a;
}
a=9,river9[1]=9;
while(a<=16384)
{
t=a,sum=0;
while(t!=0)
{
sum+=t%10;
t/=10;
}
a+=sum;
i++;
river9[i]=a;
}
int m=1;
while(scanf("%d",&n)&&n!=0)
{
printf("Case #%d\n",m);
m++;
int t1=1,t3=1,t9=1;
while(1)
{
while(river1[t1]<n)
{
t1++;
}
if(river1[t1]==n)
{
printf("first meets river 1 at %d\n",n);
break;
}
while(river3[t3]<n)
{
t3++;
}
if(river3[t3]==n)
{
printf("first meets river 3 at %d\n",n);
break;
}
while(river9[t9]<n)
{
t9++;
}
if(river9[t9]==n)
{
printf("first meets river 9 at %d\n",n);
break;
}
t=n;
while(t!=0)
{
n+=t%10;
t=t/10;
}
}
}
return 0;
}
数字河
最新推荐文章于 2021-07-01 09:46:04 发布