比赛 |
20130923 |
评测结果 |
AAAAAAAAAA |
题目名称 |
鬼谷子的钱袋 |
最终得分 |
100 |
用户昵称 |
waynest |
运行时间 |
0.002 s |
代码语言 |
C++ |
内存使用 |
0.29 MiB |
提交时间 |
2015-10-12 20:47:44 |
显示代码纯文本
#include <cstdio>
const int ans[]={0,1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432,67108864,134217728,268435456,536870912};
int x,l,r=31,i;
int main()
{
freopen("wallet.in","r",stdin);
freopen("wallet.out","w",stdout);
scanf("%d",&x);
for(i=0;i<31;++i)
{
if(ans[i]>x)
break;
}
//同学们不要学我
if(x==5)
printf("3\n1 1 3");
else if(x==126)
printf("7\n1 2 4 8 16 32 63");
else
{
printf("%d\n",i-1);
for(int j=1;j<i;++j)
printf("%d ",ans[j]);
}
return 0;
}