用1,2,3…9组成3元组<abc,def,ghi>,每个数字恰好使用一次。
要求三个数的比例为abc:def:ghi=1:2:3。输出所有3元组。
【输入格式】
无
【输出格式】
若干行,每行三个数表示一个三元组(每个数之间用一个空格分隔)
#include <iostream>
using namespace std;
int main() {
int a, b, c;
for(a=123;a<=329;a++)
{
b = 2*a; c = 3*a;
int shu[9];
int d;
d = a * 1000000 + b * 1000 + c;
for (int i = 0; i <= 8; i++)
{
shu[i] = d % 10;
d = d / 10;
}
int m = 0;
for (int i = 0; i <= 8; i++) {
if (shu[i] == 0)m++;
}
if(!m){
for (int i = 1; i <= 8; i++)
{
for (int j = 0; j <= 8 - i; j++)
{
if (shu[j] > shu[j + 1]) { int swap; swap = shu[j + 1]; shu[j + 1] = shu[j]; shu[j] = swap; }
}
}int k = 0; for (int i = 0; i <= 7; i++) { if (shu[i] == shu[i + 1]) k++; }
if(!k) { cout << a << " " << b << " " << c<<endl; }
}
}
}