我们需要求所有满足条件的四位数,使得。显然若,则都将不是四位数;而,对应的一定不是四位数。因此;此时,对应的因此只要求的值,原命题就可以完成。

现在问题已经转化为求满足的所有的值。这个等式可以化为

因此,只要在集合中循环变量,找到所有满足条件即可。

#include <iostream>
#define _CRT_SECURE_NO_DEPRECATE

void solve() {
    int b, c;
    for (b = 0; b < 10; b++) {
        for (c = 0; c < 10; c++) {
            if (10 * c - 890 * b == 80) {
                std::cout << 1 << b << c << 9 << std::endl;
            }
        }
    }
}

int main() {
    solve();
    return 0;
}