题解 | #输出水仙花数#

输出水仙花数

https://www.nowcoder.com/practice/dabaf13009ef4d0cbf22302fd6a530a6

#include <iostream>
#include <cmath>
#include <vector>
using namespace std;

int main() {

    // write your code here......
    vector<int> tri(10);
    for (int i = 0; i < 10; i++) {
        tri[i] = pow(i, 3);
    }
    for (int i = 100; i < 1000; i++) {
        int num{i}, sum{0};
        while (num != 0 and i >= sum) {
            sum += tri[num % 10] ;
            num /= 10;
        }
        if (i == sum) {
            cout << i << endl;
        }
    }

    return 0;
}

这里三次方运算是高频操作,所以应该用一个数组存储 0-9 的三次方。

全部评论

相关推荐

09-22 15:45
门头沟学院 Java
谁给娃offer我给...:我也遇到了,我说只要我通过面试我就去,实际上我根本就不会去😁
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务