#微软笔试# 8.20晚上微软的三道题
第一题:给定一个数组列表,我们从中抽取出两个数字,希望这两个数字的和最大,这两个数字的条件就是每个位上的数字相加能够相等。例如[17,71,24,42]中有两个一对,[17,71],[24,42],但是最大的是17+71=88
第二题:给定M个1*1和N个2*2的瓦片,组成最大的正方形长度。可以不用完把所有的瓦片。
第三题:有一个m*n的小镇,镇上有很多户人家,我们想在这个镇上开店,店到每户人家的距离小于等于K(距离就是店到每户人家的格子数,即使格子经过每户人家),求出在这个镇上开店的候选地址个数
第一题:给定一个数组列表,我们从中抽取出两个数字,希望这两个数字的和最大,这两个数字的条件就是每个位上的数字相加能够相等。例如[17,71,24,42]中有两个一对,[17,71],[24,42],但是最大的是17+71=88
第二题:给定M个1*1和N个2*2的瓦片,组成最大的正方形长度。可以不用完把所有的瓦片。
第三题:有一个m*n的小镇,镇上有很多户人家,我们想在这个镇上开店,店到每户人家的距离小于等于K(距离就是店到每户人家的格子数,即使格子经过每户人家),求出在这个镇上开店的候选地址个数
全部评论
阿里内推可以找我!
第二题咋写
你们第三题图出来了吗,为啥我第三题图一直是问号
最后一题怎么想都会超时…
没想到今天第一题就卡住了。。。这个应该怎么做啊😭
今天也有笔试吗?
T3:
每次只更新距离恰好为K的点即可,记录贡献是当前点周边距离<= K的点的数量,若数量等于图中1的个数且该点非1,则贡献+1,复杂度O(N * M * K)。
T3 曼哈顿距离,记录左上左下右上右下四条斜线位置,每一个房子更新四条线,最后把四条线包住的点当中的空地数出来就行,时间复杂度O(M*N)
第二题看起来就是贪心,能用2的就不用1。
边长为2的方块先尽可能的组成一个正方形。最后剩余的2和1决定了边长还能往外增加多少。
相关推荐
腾讯 普通offer 24k~26k * 15,年包在36w~39w左右。
点赞 评论 收藏
分享
10-18 21:51
西安电子科技大学 C++ 点赞 评论 收藏
分享
点赞 评论 收藏
分享