1 条题解

  • 0
    @ 2026-11-6 20:59:12
    #include<iostream>
    #include<cmath>
    using namespace std;
    int main(){
        long long n,s=0,a[1001];
        cin>>n;
        if(n%2==1) {cout<<"-1";return 0;}
        if(n & 1==1) {cout<<"-1";return 0;}
        while(n!=0){
            if(n&1==1 && s==0) {cout<<"-1";return 0;}
            if(n&1==1) a[s]=pow(2,s);
            s++;
            n=n>>1;
        }
        for(int i=s;i>=1;i--)
            if(a[i]!=0) cout<<a[i]<<" ";
        return 0;
    }
    

    信息

    ID
    687
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    (无)
    递交数
    1
    已通过
    1
    上传者