用1,2,3...,9组成3个三位数abc,def,ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解。
#include<stdio.h>
#include<string.h>
int flag[10];
int repeat(int n){
while(n>0){
int a=n%10;
if(++flag[a]>1||a==0)
return 0;
n/=10;
}
return 1;
}
int main(){
for(int i=123;i<333;i++){
memset(flag,0,sizeof(flag));
if(repeat(i)&&repeat(2*i)&&repeat(3*i))
printf("%d:%d:%d=1:2:3\n",i,2*i,3*i);
}
return 0;
}