题目
code:
#include<bits/stdc++.h>
using namespace std;
int a[10010],re[10000000]={0,1};
int main(){
int n,sum=0,x=0;
cin>>n;
for(int i=2;sum<n;i++){
sum+=i;
a[++x]=i;
}
if(sum-n==1) a[1]=1,a[x]++;
else a[sum-n-1]=1;
for(int i=1;i<=x;i++) if(a[i]!=1) cout<<a[i]<<' ';
cout<<endl;
int len=1;
while(x>=1){
int jw=0;
for(int i=1;i<=len;i++){
re[i]=re[i]*a[x]+jw;
jw=re[i]/10;
re[i]%=10;
}
while(jw>0){
len++;
re[len]=jw%10;
jw/=10;
}
x--;
}
for(int i=len;i>=1;i--) cout<<re[i];
}