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

求最大连续bit数

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

import java.util.Scanner;

// 解题思路:通过i%2获取最后一位是否为1,用count记录连续的1的个数,如果为0,将count置为0,下次从新记录。
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
       
        int i=1;
        int max = 0,count = 0;
        while(num!=0){
            if((num & 1)==1){ //相当于num%2
              
                count++;
            }else{
                
                 max = Math.max(max,count);
                 count= 0;
            }
            num = num>>1; //相当与num/2
        }
        max = Math.max(max,count);
       
        System.out.println(max);
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务