给定数字,找到其二进制表示形式中最长的连续1的长度。
Input: n = 15 Output: 4 The binary representation of 14 is 1111.
Step 1: input the number. Step 2: use one counter variable c=0. Step 3: Count the number of iterations to reach i = 0. Step 4: This operation reduces length of every sequence of 1s by one.
# Python program to find # length of the longest # consecutive 1s in # binary representation of a number. def maxlength(n): # Initialize result c = 0 # Count the number of iterations to # reach x = 0. while (n!=0): # This operation reduces length # of every sequence of 1s by one. n = (n & (n << 1)) c=c+1 return c # Driver code n=int(input("Enter The Number ::>")) print("Maximum Length of 1's ::>",maxlength(n))
输出结果
Enter The Number ::>15 Maximum Length of 1's ::>4