include[HTML_REMOVED]
include[HTML_REMOVED]
include[HTML_REMOVED]
using namespace std;
int n,m;
vector[HTML_REMOVED] a;
void dfs(int x,int now){//x表示选到第几个数,now表示已经选了多少
if(a.size()>m||a.size()+n-x+1<m)return;
//若选的数的个数已经超过m,或目前选的加上剩的数都不够m个,肯定不行
if(x==n+1&&now==m)
{
for(int i=0;i<m;i++)
printf(“%d “,a[i]);
cout<<endl;
return;
}
a.push_back(x);
dfs(x+1,now+1);
a.pop_back();//17、18、19行表示选x的情况
dfs(x+1,now);//不选x的情况
}
int main(){
scanf(“%d%d”,&n,&m);
dfs(1,0);
return 0;
}