#include<bits/stdc++.h>
using namespace std;
int a[10001];
int c[1001]={0};
void cheng(int &x){
int g=0;
for(int i=1000;i>=0;i--){
c[i]*=x;
c[i]+=g;
g=c[i]/10;
c[i]%=10;
}
}
int main() {
int n;
cin>>n;
if(n<=4){
cout<<n<<endl<<n;
return 0;
}
c[1000]=1;
int q=2,sum=0,z=0;
while(sum<n){
sum+=q;
a[z]=q;
q++;
z++;
}
int zz=z;
z=0;
int f;
if(sum-n==1){
z=1;
}else if(sum-n>1){
for(int i=0;i<zz;i++){
if(a[i]==sum-n){
f=i;
break;
}
}
}
int zzz=z;
for(;z<zz;z++){
if(z!=f){
cout<<a[z]<<" ";
}
}
for(int i=zzz;i<zz;i++){
if(i!=f){
cheng(a[i]);
}
}
cout<<endl;
int w;
bool flag=true;
for(int i=0;i<=1000;i++){
if(c[i]!=0){
flag=false;
w=i;
break;
}
}
if(flag){
cout<<0;
return 0;
}else{
for(;w<=1000;w++){
cout<<c[w];
}
}
return 0;
}