
#include<iostream>
using namespace std;
#include<string>
#include<algorithm>
void f(int n,int a[],int k)
{
if(n==0)
{
for(int i=0;i<k;i++)
{
cout<<a[i]<<' ';
}
cout<<endl;
return;
}
int i;
for(i=n;i>=1;i--)
{
if(k>0&&i>a[k-1])continue;
a[k]=i;
f(n-i,a,k+1);
}
}
int main()
{
int a[1000];
f(6,a,0);
return 0;
}