#10错了,求dalao调试
#include<bits/stdc++.h>
using namespace std;
int a[5000],b[1000];
int main()
{
int n,i,j,r,z=0,y=1;
cin>>n;
for(i=2;n>i;++i)
{
b[++z]=i;
n-=i;
if(n==i)
{
--n;
++b[z];
}
}
for(i=z;n;--i,--n) ++b[i];
for(i=1;i<=z;++i) cout<<b[i]<<" ";
cout<<endl;
a[1]=1;
for(i=1;i<=z;++i)
{
r=0;
for(j=1;j<=y;++j)
{
a[j]*=b[i];
a[j]+=r;
r=a[j]/100000;
a[j]%=100000;
}
if(r) a[++y]=r;
}
cout<<a[y];
for(i=y-1;i;--i) printf("%05d",a[i]);
return 0;
}