社区讨论

有末有人帮我看一下代码?(第一次用,不太熟悉,见谅)

P7071[CSP-J 2020] 优秀的拆分参与者 3已保存回复 10

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
10 条
当前快照
1 份
快照标识符
@mhj22z4n
此快照首次捕获于
2025/11/03 19:27
4 个月前
此快照最后确认于
2025/11/03 19:27
4 个月前
查看原帖

代码:

CPP
#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n;
    cin >> n;
    int a[21] = {0};
    int i = 0;
    while(n!=0){
        a[i]=(n%2);
        n/=2;
        i++;
    }
    if(a[0]==1) cout << "-1";
    else{
        int expon=1;
        vector <int> r(i,0);
        for(int j=0;j<i;j++){
            r[j]+=a[j]*=expon;
            expon *= 2;
        }
        for(int j = i+1;j>=0;j--){
            if(r[j]!=0) cout << r[j] << " ";
        }
    }
    return 0;
}
请个位大佬帮我看一下代码[哭]
(话说我不会题目理解错了吧?[汗])

回复

10 条回复,欢迎继续交流。

正在加载回复...