题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1342
题目大意:输出6--13从小到大个数,然后按顺序输出6个数,输出所有种可能。
解题思路:这题难度不是太大就是有一点输出问题,就是每两个样例之间的输出一个换行,但当你输出0让它结束又不能有换行。我的做法是:使用六个for循环(因为就6到13个数不会超时的,这题肯定有更简单的做法,但是我不会其他方法,所以我的思路仅供参考)我把数存到数组中,然后通过下表经行输出,我又定义一个t,就解决了换行问题了,大家看代码就会明白的!!!!
题目代码:
#include<stdio.h>
int main()
{
int n,i,a,b,c,d,e,f,s[],t=;
while(scanf("%d",&n)&&n)
{
if(t==)
printf("\n");
for(i=;i<n;i++)
scanf("%d",&s[i]);
for(a=;a<n;a++)
for(b=a+;b<n;b++)
for(c=b+;c<n;c++)
for(d=c+;d<n;d++)
for(e=d+;e<n;e++)
for(f=e+;f<n;f++)
printf("%d %d %d %d %d %d\n",s[a],s[b],s[c],s[d],s[e],s[f]);
t=;
}
return ;
}