您的位置:首页 > 其它

hdu 1163 Eddy's digital Roots (数学)

2012-11-06 13:31 489 查看
点击打开链接

ab*ab=(10*a+b)*(10*a+b)=100*a*a+10*2*a*b+b*b=a*a+2*a*b+b*b=(a+b)*(a+b)

abc*abc=(100*a+10*b+c)*(100*a+10*b+c)

               =10000*a*a+2000*a*b+100*b*b+200*a*c+20*b*c+c*c

               =a*a+2*a*b+b*b+2*a*c+2*b*c+c*c

               =(a+b)^2+2*c*(a+b)+c*c

              = (a+b+c)*(a+b+c)

同理可以知道四位数,五位数也一样,

即n*n的数根=n的数根*n的数根

数论当中有个结论:“某数乘积的九余数=等于该数九余数的乘积”当余数为0时,该数为九。

#include"stdio.h"
int main()
{
int i,n,sum;
while(scanf("%d",&n)!=EOF&&n!=0)
{
sum=1;
for(i=0;i<n;i++)
sum=(sum*n)%9;
if(sum==0)
printf("9\n");
else
printf("%d\n",sum);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: