题解 | #小红的字符生成#

小红的字符生成

https://www.nowcoder.com/practice/f8659377ca104b1aad45dd2fb564c940

//实际是将求正整数n能分解成最少多少个2的次方的合集的问题
void decomposeIntoPowersOfTwo(unsigned int n, std::vector<int>& powers) {
    for (int i = 0; n > 0; ++i) {
        if (n & 1) { // 如果当前位是1
            powers.push_back(i); // 将对应的指数添加到集合中
        }
        n >>= 1; // 右移一位
    }
}

全部评论

相关推荐

fRank1e:吓得我不敢去外包了,但是目前也只有外包这一个实习,我还要继续去吗
点赞 评论 收藏
分享
07-01 13:37
门头沟学院 Java
steelhead:不是你的问题,这是社会的问题。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-15 12:20
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务