题目描述
对一个数十进制表示时的每一位数字乘五次方再求和,会得到一个数的五次方数
例如:1024的五次方数为1+0+32+1024=1057
有这样一些神奇的数,它的五次方数就是它自己,而且这样的数竟然只有有限多个
从小到大输出所有这样的数
输入
无
输出
每个数独立一行输出
解题思路:
0和1不算5次方数
代码如下:
#include <iostream>
using namespace std;
typedef long long LL;bool check(LL x) {LL ans = 0;LL tmp = x;while (x) {int c = x % 10;ans += c * c * c * c * c;x = x / 10;}if (ans == tmp)return true;return false;
}int main() {for (int i = 2; i <= 999999; i++) {if (check(i))cout << i << endl;}return 0;
}