#include <stdio.h>
#include <math.h>
int fact(int a,int n);
int shui(int n);
int main()
{
int N;
scanf("%d",&N);
shui(N);
return 0;
}
int fact(int a,int n)
{
int sum=0;
while(a>0){
sum+=pow(a%10,n);
a/=10;
}
return sum;
}
int shui(int n)
{
if(n<=7){
int chu=1,mo=9;
for(int i=1;i<n;i++){
chu*=10;
mo=mo*10+9;
}
int kum;
for(int j=chu;j<=mo;j++){
if(j==fact(j,n))
printf("%d\n",j);
}
}
else if(n==8)
printf("%d\n%d\n%d\n",24678050,24678051,88593477);//数据太大,所以直接写出,否则会
} //超时
水仙花数(C语言)
最新推荐文章于 2024-08-14 22:52:06 发布