天才二进制轻松解
2025-05-25 17:49:46
发布于:广东
0阅读
0回复
0点赞
#include<stdio.h>
long long pw(int a,int b){
for(int i=0;i<b;i++){
a*=2;
}
return a;
}
int main(){
long long a,cnt=0;
scanf("%lld",&a);
if(a%2==1){
printf("%d",-1);
return 0;
}
bool aa[32];
while(a){
aa[cnt++]=a%2;
a/=2;
}
for(int i=cnt-1,j=1;i>0;i--,j++){
if(!aa[i]) continue;
printf("%d ",pw(aa[i],i));
}
return 0;
}
这里空空如也
有帮助,赞一个