#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
//n是位数,Frist对应的数
int i=1;
int frist;
while(i<n){
frist*=10;
i++;
}
i=frist;
//遍历100到999
while(i<frist*10){
int sum=0;
int t=i;
//整数分解
do{
int d=t%10;
t/=10;
int p=d;
int j=1;
//求出个位的三次方
while(j<n){
p*=d;
j++;
}sum+=p;//每一位三次方求和
}while(t>0);
//判断是否符合水仙花数
if(sum==i){
printf("%d\n",i);
}
i++;
}
return 0;
}
无限进步,请大佬多多指导