题解 | #求最大连续bit数#

求最大连续bit数

https://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2

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

vector<int> TenToTwo(int num)
{
    vector<int> vec;
    int tmp;
    while (num != 0){
        if (num % 2 != 0){
            tmp = 1;
        }
        else{
            tmp = 0;
        }
        vec.push_back(tmp);
        num = num / 2;
    }
    vector<int> vv;
    for (int i = vec.size(); i >= 0; i--){
        vv.push_back(vec[i]);
        // cout << vec[i];
    }
    return vv;
}

int main() {
     int input;
     cin >> input;
     vector<int> VV = TenToTwo(input);

     int max = INT_MIN;
     int cnt = 1;
     for (int i = 0; i < VV.size(); i++){
        if (VV[i] == 1 && VV[i+1] == 1){
            cnt++;
            
        }
        else{
            cnt = 1;
        }
        if (max < cnt)  max = cnt;
     }
     cout << max <<endl;

     return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 12:02
ssob上原来真有BOSS啊
硫蛋蛋:这种也是打工的,只不是是给写字楼房东打工
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:11
点赞 评论 收藏
分享
05-14 20:34
门头沟学院 Java
窝补药贝八股:管他们,乱说,反正又不去,直接说680
点赞 评论 收藏
分享
零OFFER战士:另一个版本查看图片
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 17:10
什么素质,我请问呢,要掉小珍珠了。。。又憋屈又生气
Steven267:这不喷回去?花钱是大爷,记住这个道理
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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