基础练习 特殊的数字
时间限制:1.0s 内存限制:512.0MB
问题描述
153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。
输出格式
按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
分析:
该题及就是求水仙花数
C/C++代码实现:
1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <cmath> 6 #include <stack> 7 #include <map> 8 #include <queue> 9 10 using namespace std; 11 12 void solve() 13 { 14 for(int i = 100; i <= 999; ++ i) 15 { 16 int temp = i, ans = 0; 17 while(temp) 18 { 19 int temp1 = temp % 10; 20 ans += temp1 * temp1 * temp1; 21 temp /= 10; 22 } 23 if (ans == i) 24 printf("%d ", i); 25 } 26 return ; 27 } 28 29 int main() 30 { 31 solve(); 32 return 0; 33 }