#include<bits/stdc++.h>
using namespace std;
const int MAX_N=100;
int f;
int v[MAX_N];
int N,R;
void combination(int now,int cnt,int goal){
if(cnt==goal){
for(int i=0;i<N;i++)if(v[i])cout<<i;
cout<<endl;
return;
}
for(int i=now;i<N;i++){
if(!(f&(1<<i))){
v[i]=1;
f|=(1<<i);
combination(i+1,cnt+1,goal);
v[i]=0;
f&=~(1<<i);
}
}
}
void permutation(int now,int cnt,int goal){
if(cnt==goal){
for(int i=0;i<goal;i++)cout<<v[i];
cout<<endl;
return;
}
for(int i=0;i<N;i++){
if(!(f&(1<<i))){
v[now]=i;
f|=(1<<i);
permutation(now+1,cnt+1,goal);
v[now]=-1;
f&=~(1<<i);
}
}
}
int main() {
cin>>N>>R;
cout<<"permutation"<<endl;
for(int i=0;i<N;i++)v[i]=-1;
permutation(0,0,R);
cout<<endl;
cout<<"combination"<<endl;
for(int i=0;i<N;i++)v[i]=0;
combination(0,0,R);
cout<<endl;
return 0;
}