GitHub

高阶水仙花数 1418

题目描述:

对于 3 位的水仙花数,是指该三位数的各位数字的立方和等于该数本身。同样四位数的水仙花数就是每个数位上的数字的 4 次方之和等于该数,依次类推。给定数字位数,求相应的水仙花数。 n <= 10

输入描述:

多组输入,每组一行,表示数字位数。

输出描述:

对应于该数字位数,输出相应的水仙花数,每个水仙花数占一行。

样例输入:

3

4

样例输出:

153

370

371

407

1634

8208

9474

#include<iostream>
#include<math.h>
using namespace std;
int main(){
int n;
while(cin>>n){
int i,j,p;
int left=1,right=1,k,sum=0;
for(i=1;i<n;i++){
left=left*10;
right=right*10;
}
right=right*10;
for(k=left;k<right;k++){
for(p=k;p>0;p=p/10){
sum=sum+pow(p%10,n);
}
if(sum==k){
cout<<k<<endl;
}
sum=0;
}
}
return 0;
}

posted @ 2019-06-24 16:59  繁华似锦觅安宁  阅读(307)  评论(0编辑  收藏  举报