3 条题解
-
1
#include<bits/stdc++.h> using namespace std; long long q,w,e,r,t,y,u,i,o,p,s,d,f,g,h,j,k,l,m,n,v,x,z,kk; int b[1000]; int a[1000]; int c[1000]; int main() { cin>>n; if(n%2==1) { cout<<"-1"; return 0; } i=1;x=2; while(n!=0) { if(x*2<=n) x*=2; if(x*2>n) { n-=x; cout<<x<<" "; x=2; } i++; } return 0; }
-
0
#include <bits/stdc++.h> using namespace std; int main() { int n; int a[101]; cin>>n; if (n % 2 == 1) { cout<<-1; return 0; } int t = 1; int k = 0; while (n != 0) { if (n % 2 != 0) { k++; a[k] = t; } t = t*2; n = n/2; } for (int i = k;i >= 1;i--) { cout<<a[i]<<" "; } return 0; }
- 1
信息
- ID
- 5971
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 1
- 标签
- 递交数
- 32
- 已通过
- 15
- 上传者