题目:用1,2,3,…,9组成3个数abc,def和ghi,每个数字恰好用一次,要求abc:def:ghi=1:2:3。按照"abc def ghi"的格式输出所有解,每行一个解
下面是我的解答代码,但是遗漏了一个输出 267 534 801
#define _CRT_SECURE_NO_WARNINGS
#include<cmath>
#include<functional>
#include<cstdio>
using namespace std;
int main() {
auto i = 0, j = i, k = j;
for(i=1;i<=9;i++)
for (j = 1; j <= 9; j++) {
for (k = 1; k <= 9; k++) {
auto abc = i * 100 + j * 10 + k, def = 2 * abc, ghi = 3 * abc;
if (ghi >= 1000)continue;
bool g[10]{ false };
g[i] = true; g[j] = true; g[k] = true;
g[def % 10] = true; g[def % 100 / 10] = true; g[def / 100] = true;
g[ghi % 10] = true; g[ghi % 100 / 10] = true; g[ghi / 100] = true;
auto flag = true;
for (int q = 1; q <= 9; q++) {
if (!g[q]) { flag = false;
break;
}
}
if (flag)printf("%d %d %d\n", abc, def, ghi);
}
}
}