代码
#include <iostream>
using namespace std;
int m;
void print(int n, int state){
int cur = 1;
for(int i = 0; i < n; i++){
if((state >> i) & 1){
cout << cur << " ";
}
cur++;
}
cout << endl;
}
void f(int cur, int n, int state, int num){
if(num == m){
print(n, state);
return;
}
if(cur == n){
return;
}
f(cur+1, n, state | (1 << cur), num + 1);
f(cur+1, n, state, num);
}
int main()
{
int n;
cin >> n >> m;
f(0, n, 1 << n, 0);
return 0;
}