HDU 1013 Digital Roots
Digital Roots
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 62631 Accepted Submission(s): 19453
For example, consider the positive integer 24. Adding the 2 and the 4 yields a value of 6. Since 6 is a single digit, 6 is the digital root of 24. Now consider the positive integer 39. Adding the 3 and the 9 yields 12. Since 12 is not a single digit, the process must be repeated. Adding the 1 and the 2 yeilds 3, a single digit and also the digital root of 39.
#include<stdio.h>
#include<string.h>
int main()
{
char a,b;
int s1,s2;
while(1)
{
s1=0;
scanf("%c",&a);
if(a=='0')
break;
s1=s1+a-'0';
s2=0;
while(1)
{
scanf("%c",&a);
if(a=='\n')
break;
s1=s1+a-'0';
}
while(1)
{
while(s1!=0)
{
s2=s2+s1%10;
s1=s1/10;
}
if(s2<10)
break;
else
{
s1=s2;
s2=0;
}
}
printf("%d\n",s2);
}
return 0;
}
浙公网安备 33010602011771号