题解 | #求最大连续bit数#
求最大连续bit数
https://www.nowcoder.com/practice/4b1658fd8ffb4217bc3b7e85a38cfaf2
#include <stdio.h> int main() { int n, x = 0; scanf("%d", &n); int num[20] ={0}; while (n != 0) { if ((n & 0x1) != 0) { n = n >> 1; num[x]++; } else if ((n & 0x1) == 0) { x++; n = n >> 1; } } int max = num[0]; for (int i = 0; i<19; i++) { if (max<num[i+1]) { max = num[i+1]; } // printf("%d",num[i]); } printf("%d",max); return 0; }