京东笔试 100 36 东哥给个机会

第一题     合唱团   单调栈+二分查找
题目 大意: 将数组分成若干个数组 ,子数组内部从小到大排序,使所有子数组整体按非递减顺序,求子数组最大数量;
思路:当 当前数大于等于前一个数,加入到栈,当当前数小于栈顶节点,二分找到第一个大于栈的节点,将该节点与栈里后面节点合并,最后子数组个数为栈中节点个数
分享一个O(n)解法,膜拜大佬:https://www.nowcoder.com/discuss/232733





第二题:我是堆+Map ,每次删除关系最多的人,求大佬指点怎么做,反正我是傻了!!!!
最后,东哥给个机会!!!
#京东##笔试题目#
全部评论
膜拜大佬
点赞 回复 分享
发布于 2019-08-24 21:28
要是早点发出来就好了😂
点赞 回复 分享
发布于 2019-08-24 21:33
import sys import math n=int(input()) s=input().split(" ") s=[int(i) for i in s] f=s[:] f.sort() ans=0 ds={} df={} for i in range(len(s)): ds[s[i]]=True df[f[i]]=True if ds==df: ans+=1 ds={} df={} print(ans)这个是我的,全ac
点赞 回复 分享
发布于 2019-08-24 21:56
链接里的那个思路对于 7 8 1 3 8 9 4 8 是不是不行
点赞 回复 分享
发布于 2019-08-24 22:29
第一题看到一个大佬的思路,直接比较两个数组前i项的和就行,复杂度o(n)
点赞 回复 分享
发布于 2019-08-24 22:32

相关推荐

黑皮白袜臭脚体育生:简历条例统一按使用了什么技术实现了什么功能解决了问题或提升了什么性能指标来写会好些,如使用布隆过滤器实现了判断短链接是否存在,大大提升了查询速度
点赞 评论 收藏
分享
评论
点赞
28
分享

创作者周榜

更多
牛客网
牛客企业服务