小红书 秋招 笔试(一二题)
1.算法:给定多个查询,每次查询输入一个整数,需要判断这个数是否能够表示为至少三个连续正整数的乘积。例如,三个连续正整数k、k+1和k+2的乘积为k*(k+1)*(k+2),四个连续正整数的乘积为k*(k+1)*(k+2)*(k+3),依此类推。需要对这些查询给出是否能够这样表示的判断结果。
思路:预处理所有可能的三连及以上连续正整数乘积,将结果存入集合。对于每个查询,直接检查该数是否在预处理集合中即可快速判断。
2.算法:给定若干个区间,每个区间由左右端点表示。需要在这些区间上放置最少的点,要求每个区间内至少包含一个点。即对于每个给定的区间,都必须至少有一个点落在该区间范围内。
思路:按区间右端点从小到大排序。遍历区间,在每个区间的右端点放置一个点,这个点能覆盖所有包含该右端点的区间。跳过已覆盖的区间,继续处理后续未覆盖的区间。
#秋招笔面试记录##秋招笔试记录##秋招投递记录#
思路:预处理所有可能的三连及以上连续正整数乘积,将结果存入集合。对于每个查询,直接检查该数是否在预处理集合中即可快速判断。
2.算法:给定若干个区间,每个区间由左右端点表示。需要在这些区间上放置最少的点,要求每个区间内至少包含一个点。即对于每个给定的区间,都必须至少有一个点落在该区间范围内。
思路:按区间右端点从小到大排序。遍历区间,在每个区间的右端点放置一个点,这个点能覆盖所有包含该右端点的区间。跳过已覆盖的区间,继续处理后续未覆盖的区间。
#秋招笔面试记录##秋招笔试记录##秋招投递记录#
全部评论
相关推荐
08-18 16:18
武汉科技大学 Java 
点赞 评论 收藏
分享
08-27 11:42
门头沟学院 前端工程师 点赞 评论 收藏
分享