知识点:

循环控制:循环控制

#include <iostream>
using namespace std;

int main() {
    int sum = 0;

    for (int i = 10000; i <= 99999; i++) {
        sum = 0;

        for (int j = 10000; j >= 10; j /= 10) {
            sum += (i / j) * (i % j);
        }

        if (sum == i) {
            cout << i << " ";
        }
    }

    return 0;
}

// 解法一
/*
bool isLily(int n);

int main() {
    for (int i = 10000; i <= 99999; i++) {
        if (isLily(i)) {
            cout << i << " ";
        }
    }

    return 0;
}

bool isLily(int n) {
    int sum = 0;
    bool res = false;

    sum = (n / 10000) * (n % 10000) + (n / 1000) * (n % 1000) + (n / 100) *
          (n % 100) + (n / 10) * (n % 10);

    if (n == sum) {
        res = true;
    } else {
        res = false;
    }

    return res;
}
*/