题目描述
将1,2,⋯,9共9个数分成3组,分别组成3个三位数,且使这3个三位数构成1:2:3的比例,试求出所有满足条件的3个三位数。
输出输出
无输入
输出:
192 384 576
219 438 657
273 546 819
327 654 981
注意
1.题目中的第一句话是一个坑。将1-9这三个数分成三组 所以1-9每个数字出现一次像 123 456 789这样
2.最简单的就是分离出三个三位数的每位9个数字,相加=1+2+…+9,相乘=1*2…*9
3.最简单的满足一二三倍关系就简单了。
代码实现
#include <stdio.h>
int main()
{
int a,b,c;
for(a=123;a<=333;a++)
{
b=a*2;
c=a*3;
if((a/100+a/10%10+a%10+b/100+b/10%10+b%10+c/100+c/10%10+c%10==1+2+3+4+5+6+7+8+9)&&((a/100)*(a/10%10)*(a%10)*(b/100)*(b/10%10)*(b%10)*(c/100)*(c/10%10)*(c%10)==(1)*(2)*(3)*(4)*(5)*(6)*(7)*(8)*(9)))
printf("%d %d %d\n",a,b,c);
}
return 0;
}