#include <fstream>
using namespace std;
ifstream f("Aranjamente.in");
ofstream g("Aranjamente.out");
void Afisare();
unsigned int n,m,Multime[18],Submultime[18];
void Aranjamente(unsigned int k,unsigned int contor)
{
for(unsigned int i=contor;i<=n;i++)
{
Submultime[k]=Multime[i];
if(k+1<=m)
Aranjamente(k+1,Submultime[k]+1);
else
if(k==m) Afisare();
}
}
void Afisare()
{
for(unsigned int i=1;i<=m;i++)
g<<Submultime[i]<<" ";
g<<'\n';
}
int main()
{
f>>n>>m;
for(unsigned int i=1;i<=n;i++)
Multime[i]=i;
Aranjamente(1,1);
f.close();
g.close();
return 0;
}