- 描述
用1,2,3···,9,组成3个3位数,abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3;
按照“abc def ghi”格式输出所有解,每行一个解。(提示:不必太动脑) - 算法
int num[10]={0};
int cf(int);
int main()
{
int i;
int c[3];
for(i=123;i<336;i++)
{
int sum=0;
if(cf(i)&&cf(2*i)&&cf(3*i))
c[0]=i,c[1]=2*i,c[2]=3*i;
else continue;
for(int t=1;t<=9;t++)
if(num[t]==1) sum++;
if(sum==9) printf("%d %d %d\n",c[0],c[1],c[2]);
memset(num,0,sizeof(num));//将数组num[10]赋值为0;
}
return 0;
}
int cf(int s)
{
int A,B,C;
A=s%10;
B=(s/10)%10;
C=s/100;
if(A!=B&&A!=C&&B!=C)
{
num[A]++;
num[B]++;
num[C]++;
return s;
}
else return 0;
}