1. 程式人生 > >演算法競賽入門習題2-6排列

演算法競賽入門習題2-6排列

用1,2,3,…,9組成3個三位數abc,def和ghi,每個數字恰好使用一次,要
求abc:def:ghi=1:2:3。按照“abc def ghi”的格式輸出所有解,每行一個解。提示:不必太動腦筋

感覺有點意思。。。

#include <stdio.h>
void apart(int x,int *p,int *q);
int main()
{
	int i,j,k;
	for(i=123;i<=329;i++)
	{
		int mul=1,add=0;
		j=2*i;
		k=3*i;
		apart(i,&mul,&add);
		apart
(j,&mul,&add); apart(k,&mul,&add); if(mul==1*2*3*4*5*6*7*8*9&&add==45) printf("%d %d %d\n",i,j,k); } return 0; } void apart(int x,int *p,int *q) { int a,b,c; a=x/100; b=(x/10)%10; c=x%10; *p=*p*a*b*c; *q=*q+a+b+c; }