思路:枚举,递归 ,
#include<iostream>
#include<cstdio>
using namespace std;
void try1(int n,int r){
if(n==1) printf("2(%d)",r);
else {
try1(n/2,r+1);
if(n%2==1){
printf("+2(%d)",r);
}
}
}
int main(){
int n;
scanf("%d",&n);
try1(n,0);
return 0;
}
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int n;
scanf("%d",&n);
int num=0;
while(n){
if(n%2==1) printf("%d ",num);
n=n/2;
num++;
}
return 0;
}