简单的数论题,数论东西太多,一点一点积累吧!
该题用到的是同余定理。还有一个定理就是: 一个自然数的数根(即该数各位数字相加的和,如果该和大于9,则将得到的和的各位继续相加,直到得到一个一位的数字)等于该数对9取模(如果余数为0,则树根为9)。
AC代码如下:
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int n;
while(scanf("%d",&n)&&n)
{
int s=1;
for(int i=0;i<n;i++)
s=(s*n)%9;
if(s==0) printf("9\n");
else printf("%d\n",s);
}
return 0;
}