啊!40★!
查看原帖
啊!40★!
726902
bcbgszyzh楼主2023/9/23 20:09

code: (c++11 o2)

#include<bits/stdc++.h>
using namespace std;
int a[1010],al;
int main(){
	int n;
	scanf("%d",&n);
	if(n%2){
		printf("-1");
	}else{
		while(n){
			if(n%2==1)a[al++]=1;
			else a[al++]=0;
			n/=2;
		}
		int cnt=(1<<(al));
		for(int i=0;i<al;++i){
			if(a[i]==1)printf("%d ",cnt);
			cnt/=2;
		}
	}
	return 0;
}
2023/9/23 20:09
加载中...