[Codility] lesson 1:binary gap

[Codility] lesson 1: binary gap

思路

  1. 利用bin()函数将十进制转换为二进制
  2. 利用索引来记录转换后的‘0’和‘1’

算法


def binarygap(N):
	#十进制转为二进制,并利用切片去除开头的0b
	a=str(bin(N))[2:]
	b=0
	count_0=0
	for i in range(len(a)):
		#记录连续0的个数
		if a[i]=='0':
			count_0+=1
		elif a[i]=='1':
			b=max(b,count_0)
			#遇到一个新的1,要给count_0重新赋值0
			count_0=0
	return(b)

猜你喜欢

转载自blog.csdn.net/qq_43569210/article/details/85028307
GAP
GAP