竞赛
考级
在循环的时候记得一定要开long long,不然会爆
树上结了西瓜
法兰西玫瑰
#include<bits/stdc++.h> using namespace std; long long n,sum,t=1,a[111111]; int main(){ scanf("%lld",&n); while(n-t>=0){ n-=t; a[sum]=t; t=2; sum++; } printf("%lld\n",sum); for(int i=0;i<sum;i++) printf("%lld\n",a[i]); return 0; }*
史莱克七怪
#include<iostream> using namespace std; long long a[100000]; long long sum[100000]; int main() { long long m; cin>>m; a[0]=1; sum[0]=1; for(long long i=1;i<100000;i++){ a[i]=a[i-1]*2; sum[i]=sum[i-1]+a[i]; } for(long long i=0;i<100000;i++){ if(sum[i]<m&&sum[i+1]>m){ cout<<i+1<<endl; for(int j=0;j<i+1;j++){ cout<<a[j]<<endl; } } } return 0; }
菜
#include <bits/stdc++.h> using namespace std; int main(){ long long n , cnt = 0 , all = 0; cin >> n; for(long long i=1;i<n;i*=2){ all += i; if(all > n) break; cnt++; } cout << cnt << endl; long long sum = 1; for (long long i=1;i<=cnt;i++){ cout << sum << endl; sum *= 2; } return 0; }
DARK SPECTRE
只需要注意long long就行了 AC
荷取青
majmDZB
因为1+2+4+……+2^n = 2^n - 1,所以我们可以先将n+1 代码
队团加不)ด้้童帅_者仇复
本道题代码在最后面 这道题注意事项: 1.变量要使用龙long long,不然数据会爆掉 2.在装苹果的时候,不要用数组装,因为苹果可能会很多个,用数组的话要创建一个很大的数组,太浪费时间了。
睡觉睡觉
一只CR400BF-5033
zhouty
准
#include <iostream> using namespace std; int main(){ long long N; cin >> N; long long zlnum = 1,zl = 1,res = 0,cnt = 0; while(zlnum<=N){ res++; zl *= 2; zlnum += zl; } cout << res << endl; zlnum = 1; zl = 1; while(zlnum<=N){ cout << zl << endl; zl *= 2; zlnum += zl; } return 0; }
风中雪zLyXj
#include <bits/stdc++.h> using namespace std; int main(){ long long n,cnt=0,now=0,tmp=1; cin>>n; for (long long i=1;i<n;i*=2){ now+=i; if (now<=n){ cnt++; } } cout<<cnt<<endl; for (long long i=1;i<=cnt;i++){ cout<<tmp<<endl; tmp*=2; } return 0; }
^
6.
题库管理员