京东测试笔试编程第一题,求1的长度,求思路😃

求第一个编程的思路,最后通过45,想不出怎么做。。
全部评论
只用考虑原来字符串最大连续1的长度和首尾是否都有连续的1就行 如果字符串开头是0,就算把后面挪到前面不改变最长1的长度,结尾是0的话同理
点赞 回复 分享
发布于 2019-04-13 21:20
只过了9%😪
点赞 回复 分享
发布于 2019-04-13 21:06
循环链表
点赞 回复 分享
发布于 2019-04-13 21:06
只过了55%。。不知道为啥
点赞 回复 分享
发布于 2019-04-13 21:09
是计算给一个01字符串,求最大区间那个?直接算就行了吧,AC过的
点赞 回复 分享
发布于 2019-04-13 21:15
分两种情况 先算出不调整之前 连续1的个数  然后 从头开始 计算连续多少个1  加上从尾到头 连续多少个1  不要重复遍历 最后输出不调整和调整后的大的那个值就行了
点赞 回复 分享
发布于 2019-04-13 21:22
def get_max_sub(s): if not s or len(s)==0: print(0) return   nums=list(map(int,s)) temp=0   res=[] for i in range(len(nums)): if i ==len(nums)-1 and nums[i]==1: res.append(temp+1) break if nums[i]==0: if temp==0: res.append(0) else: res.append(temp) res.append(0) temp=0   else: temp+=1   if len(res)==1: print(res[0]) else: res[0]=res[0]+res[-1] print(max(res)) string=input().strip() get_max_sub(string) 胡乱想的,运气好AC了
点赞 回复 分享
发布于 2019-04-13 21:27
帮舍友200的路过一下,都是o(n),暴力解决就好 第一题,01间隔只能连头尾,ac代码:https://paste.ubuntu.com/p/XBmgRr7MFt/ 第二题,逆操作,想成是将前面若干数插入尾巴的有序数组中,ac代码:https://paste.ubuntu.com/p/CZWmGwgGc5/
点赞 回复 分享
发布于 2019-04-14 08:42
+1,为毛不能AC
点赞 回复 分享
发布于 2019-04-13 21:07
只求1的个数,0.27
点赞 回复 分享
发布于 2019-04-13 21:08
输入字符串长度小于50000,read_line()一次只能读1024个字符,要多次读然后拼起来,我本来也是45,读了多次之后变成90
点赞 回复 分享
发布于 2019-04-13 21:09
第二题怎么做啊,第二题完全懵了
点赞 回复 分享
发布于 2019-04-13 21:30
1题用例过了100%,找到第一个0python切片。21行代码。第二道题没思路。。。。🤨
点赞 回复 分享
发布于 2019-04-13 21:49

相关推荐

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