http://noi.openjudge.cn/ch0201/8757/
描述
将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成 1:2:3的比例,试求出所有满足条件的三个三位数。
例如:三个三位数192,384,576满足以上条件。
输入
无。
输出
每行三个三位数,为满足条件的一种方案。这三个三位数按从小到大的方式给出,相邻两个数之间用单个空格隔开。
请按照第一个三位数从小到大的顺序依次输出每种方案。
代码
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int a[3],n[10],temp[3];
int i;
for (i=0;i<10;i++)
n[i]=0;
for (a[0]=123;a[0]<=329;a[0]++)
{
a[1]=a[0]*2;
a[2]=a[0]*3;
for (i=0;i<3;i++)
{
temp[0]=a[i]%10;
temp[1]=(a[i]/10)%10;
temp[2]=a[i]/100;
n[temp[0]]=1;
n[temp[1]]=1;
n[temp[2]]=1;
}
n[0]=0;
for (i=1;i<10;i++)
n[0]+=n[i];
if (n[0]==9)
cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl;
for (i=0;i<10;i++)
n[i]=0;
}
return 0;
}