资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
求出所有的“水仙花数”。所谓的“水仙花数”,是指一个3位数,其各位数字的立方和等于该数本身。
输入格式
程序使用for循环遍历所有三位数整数,不需要手动输入
输出格式
遇到水仙花数输出
样例输入
无输入
样例输出
例:
153
370
371
407
数据规模和约定
输入数据中每一个数的范围。
例:100~999
解题思路:
for循环,从100开始,到1000结束,每次获取三位数的各个位,然后分别三次方和,如果等于该数本身,即为水仙花数。代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a, b, c;
for (int i = 100; i < 1000; i++){
a = i /100;
b = i / 10 - a * 10;
c = i % 10;
if (a * a * a + b * b * b + c * c * c == i){
cout << i << endl;
}
}
return 0;
}