1. 程式人生 > >zzuli OJ 2353: 小明學長給學弟的任務

zzuli OJ 2353: 小明學長給學弟的任務

*情況說明:8級新生周賽(2)*

題目描述

 這幾天,小明學長事情比較多,一邊寫檔案,一邊思考怎麼為小石壩們出既有意思,又能檢驗大家學習情況的題目。忙的一塌糊塗的小明學長看見石榴學弟竟然來找他閒聊!閒聊!!!聊著聊著石榴學弟隨口一句:“等我看見好的題目也加上去”,“行啊”  , “。。。”(都知道做題消耗腦細胞,其實出題消耗更多腦細胞,髮際線又得高了,寶寶心裡苦,不想說話),,於是,石榴理所當然的認為學弟替學長分擔任務是一種應該傳承的美德,那麼就把這道困擾石榴好久的問題交給你們了:
給定0~9的數字,求出能組成的所有各位不重複的三位數。

輸入

多組測試資料,當n為0時輸入結束且不做輸出。
對於每組測試樣例:第一行一個數字n(3<= n <= 10)
第二行給出 n個0~9的整數,且按照從小到大不重複的給出,用空格隔開。
輸出

對於每組輸入,按照從小到大輸出,輸出能組成的所有各位不重複的三位整數,一個整數佔一行。

樣例輸入

3

1 2 3

3

4 6 8

0

樣例輸出

123

132

213

231

312

321

468

486

648

684

846

864

 

 

#include<stdio.h>
int main()
{
	int n;
	int ch[11];
	int i,j,k;
	while(scanf("%d",&n),n!=0)
	{
		for(i=0;i<n;i++)
			scanf("%d",&ch[i]);
		for(i=0;i<n;i++)
		{
			if(ch[i]==0) continue;
			for(j=0;j<n;j++)
			{
				if(j==i) continue;
				for(k=0;k<n;k++)
				{
					if(k==i||k==j) continue;
					printf("%d%d%d\n",ch[i],ch[j],ch[k]);
				}
			}
		}

	}
	return 0;
}