#include <bits/stdc++.h>//不重复任选k数,逆字典序输出
using namespace std;
deque<int> result;
void solve(int n,int k)
{
if(result.size()<k)
{
for(int m=n;m>=1;--m)
{
result.push_back(m);
solve(m-1,k);
result.pop_back();
}
}
else
{
// copy(result.begin(),result.end(),ostream_iterator<int>(cout));//输出deque中的内容
deque<int>::iterator it;
it=result.begin();
for(;it!=result.end();it++)
cout<<*it;
cout<<endl;
}
}
int main()
{
int n, k;
scanf("%d%d",&n,&k);
solve(n,k);
return 0;
}
// 6 5
#include <bits/stdc++.h>// 任选k个数,可重复选取,字典序输出
using namespace std;
deque<int> result;
void solve(int n,int k)
{
if(result.size()<k)
{
for(int m=1;m<=n;m++)
{
result.push_back(m);
solve(m,k);
result.pop_back();
}
}
else
{
// copy(result.begin(),result.end(),ostream_iterator<int>(cout));//输出deque中的内容
deque<int>::iterator it;
it=result.begin();
for(;it!=result.end();it++)
cout<<*it;
cout<<endl;
}
}
int main()
{
int n, k;
scanf("%d%d",&n,&k);
solve(n,k);
return 0;
}
// 6 5