微众笔试ac

第一次ac,基本都是简单模拟,说说思路。

1.遍历数组,往set里存,一旦存在则返回。

2.将泥人长度排序,每遍历一个数nums[i],判断是否大于数组中前一个数nums[i-1],若满足,则直接跳过。若不满足,将 nums[i-1]+1作为新值,同时计算需要增加的长度。

3.给定n,u,v,由于已是最简的分数形式,以6 5 2为例,满足条件的所有可能为:长度为2,和为5的连续子数组;长度为4,和为10的连续子数组;长度为6,和为15的连续子数组。即枚举[5,2]的整倍数:[5,2],[10,4],[15,6]。而每个长度的枚举,通过滑动窗口遍历一遍数组即可。
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-06 20:49
某国企 研发工程师 31W 硕士211
点赞 评论 收藏
分享
牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学这样才显得专业
点赞 评论 收藏
分享
09-13 17:25
亲切的00后在笔试:我也遇到了,所以我早他一步查看图片
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务