#include<stdio.h>
int a[100];
void find(int m,int n,int k)
{
int i;
if(m==0)
{
for(i=0;i<k;i++)
printf("%d ",a[i]);
printf("\n");
}
else
{
for(i=n;i>0;i--)
{
if(i>m)
continue;
else
{
a[k]=i;
find(m-i,i,++k);
k--;
}
}
}
}
void main()
{
int n;
scanf("%d",&n);
find(n,n,0);
}