微众笔试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]。而每个长度的枚举,通过滑动窗口遍历一遍数组即可。
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]。而每个长度的枚举,通过滑动窗口遍历一遍数组即可。
全部评论
相关推荐
查看7道真题和解析 点赞 评论 收藏
分享
10-30 18:20
第一拖拉机制造厂拖拉机学院 C++
牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学 点赞 评论 收藏
分享

深信服公司福利 749人发布