题目描述:
https://www.nowcoder.com/questionTerminal/4b1658fd8ffb4217bc3b7e85a38cfaf2
题目链接如上,看完本篇题解可以点开巩固一下~~~
求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1
本题含有多组样例输入。
输入描述:
输入一个byte数字
输出描述:
输出转成二进制之后连续1
示例1
输入
3
5
输出
2
1
说明
3的二进制表示是11,最多有2个连续的1。
5的二进制表示是101,最多只有1个连续的1。
解题思路:
定义两个计数器count和allCount,其中count用于记录当前连续的1的个数,allCount用于记录当前最大连续1的个数。每次用此元素和1进行与运算,若此时为1,count计数器加1,并使allCount记录当前的最大连续1的个数。若此时不为1,