好像是小学数学题
看看答案压压惊,还有,特判n=5
int n,ans;
int main()
{
n=read();
if(n==5)
{
printf("3\n1 1 3\n");
return 0;
}
printf("%d\n",(int)log2(n-1)+1);
ans=1;
fr(i,1,(int)log2(n-1))
{
printf("%d ",ans);
ans<<=1;
}
printf("%d\n",n-ans+1);
return 0;
}