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

求最大连续bit数

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

const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});
rl.on('line', function (line) {
    let res = sol(+line);
    console.log(res)
});

function sol(num: number):number{
    let str:string = num.toString(2);
    const reg = /(1+)/g;
    let arr = str.match(reg);
    let max = 0;
    for(let el of arr){
        max = Math.max(max, el.length);
    }
    return max;
}

正则匹配。

我的思路是将数字转换为二进制字符串,然后通过正则匹配出字符串中所有的连续1,然后循环结果数组,找出最长的。

全部评论

相关推荐

10-28 17:30
已编辑
华东交通大学 Java
想进开水团喝开水:字节的hr的本职工作就是黄金矿工
秋招笔试记录
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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