给1到N,N个数,要你从中选取M个出来,请输出每一种的选取情况(根据序列字典序输出,即两个序列比大小,第一位小的小,若相等第二位小的小,若相等第三位小的小……)。
输入
输入一行,包括两个整数N, M。(2<M<N≤102 \lt M \lt N \le102<M<N≤10)
输出
输出若干行,每行表示一个组合方式,按字典序输出。
注意:每行末尾有空格
输入样例 1
4 3
输出样例 1
1 2 3 1 2 4 1 3 4 2 3 4
#include <stdio.h>int n,m,a[11];void zhs(int cur, int pre)
{for(int i=pre; i<=n; i++){a[cur] = i;if(cur<m-1) zhs(cur+1,i+1);else{for(int i=0; i<m; i++)printf("%d ",a[i]);puts("");}}
}int main()
{scanf("%d %d",&n,&m);zhs(0,1);}