欢迎使用本站,预祝练习时长两年半的选手们到成功! [本模块信息来自tem/def/head]

2004:【20CSPJ普及组】优秀的拆分

时间:2024-06-02 10:03 作者:admin 点击:
#include iostream#include stackusing namespace std;int jz[30]={1};void coutn(int n,int i){ if(n==0) return ; coutn(n/2,i+1); if(n%2) coutjz[i]" ";}int main(){ for(int i=1;i30;i++) jz[i]=jz[i-1]*2; int n; cinn; if(n%2==1) cout-1; else coutn(
#include <iostream>
#include <stack>
using namespace std;
int jz[30]={1};
void coutn(int n,int i){
    if(n==0) return ;
    coutn(n/2,i+1);
    if(n%2) cout<<jz[i]<<" ";
}
int main(){
    for(int i=1;i<30;i++) jz[i]=jz[i-1]*2;
    int n;
    cin>>n;
    if(n%2==1) cout<<-1;
    else coutn(n,0);
    return 0;
}


(责任编辑:admin)
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%