https://www.luogu.com.cn/problem/P1618
将 1, 2…,9 共 9个数分成三组,分别组成三个三位数,且使这三个三位数的比例是 A:B:CA:B:C,试求出所有满足条件的三个三位数,若无解,输出 No!!!。
输入格式
三个数,A,B,C。
输出格式
若干行,每行 33 个数字。按照每行第一个数字升序排列。
输入输出样例
输入
1 2 3
输出
192 384 576
219 438 657
273 546 819
327 654 981
说明/提示
保证 A<B<C。
题记:略
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n[10];
int p(int x)
{
while (x)
{
if (n[x % 10] != 0)
return 0;
else
n[x % 10]++;
x /= 10;
}
if (n[0] != 0)
return 0;
return 1;
}
int main()
{
int a, b, c,flag=0,i,j,k;
cin >> a >> b >> c;
for (i =123;i<333; i++)
{
memset(n, 0, sizeof(n));
j = i * b / a;
k = i * c / a;
if (p(i) && p(j) & p(k))
{
flag = 1;
printf("%d %d %d\n", i, j, k);
}
}
if (flag == 0)
printf("No!!!\n");
return 0;
}