美团-推荐算法工程师 笔试题目回忆20220312

共120分钟 分 多选题 和 编程题
美团是可以多选题 编程题之间变化这做的,不需要先做一个再做另一个,我先做到的编程题,一直纠结要不要提交,我以为提交了就不能再回来了,浪费了好多时间,然后又迟到了十分钟,我笔试就没有准时的,哭哭。

编程题(20*4=80分)

1. 判断一个数是否满足以下两个条件(满足其中之一就输出True, 都不满足输出False)
① 11的倍数 ② 有至少两个‘1’
我的答案:100%通过
2. 判断有多少个连续子序列乘积为正(元素只有1/-1)
例如  [1, 1, -1, -1]  有 [1] [1] [1, 1] [-1, -1] [1, 1, -1, -1] [1, -1, -1] 共六个
我的答案:81%通过
应该标准的动态规划可以做(定义dp[i]为以i结尾的连续子序列乘积为正的个数?感觉做了N道子序列了,随便变一变,我就不会了)
我方法比较暴力:dp[i][j]定义为list[i:j+1]的乘积是否为正(1) / 负(0),最后把dp所有元素相加,思路应该没问题,时间复杂度和空间复杂度太高了,所以81%。
3. 点菜
小美可以做 [1:m]种菜,每样只能做一个,每位顾客点两个菜,全部满足顾客才满意,请让顾客满意个数最多
例如 :
小美做[1, 2, 3, 4]
顾客一:1 2
顾客二:2 3
顾客三:3 4
那么 做顾客一 顾客二 的菜,可以让两位顾客满意
我的答案:54%通过
感觉貌似是重叠子区间问题?戳气球?感觉有点像。
我纯暴力 遍历所有顾客的满足顺序(123、132、231、213、312、321)(全排列)然后看怎么能满足最多
4. 炸弹
有 n 个房间 一个序列,序列的index是秒数,序列的值是爆炸的房间号
小美每移动一次消耗一个能量,求最小能量通关
例如:
2个房间, 4秒
[2,1,1,2]
好像只需要最开始到房间2,然后回房间1?(记不太清楚了)
这题我没做,把测试用例输入骗分(9%)

多选题(6*3?我记得是20分呀一共,三道题,可三六才十八呀,记不清了)

1. resnet相关,大致有
更多层也不会梯度消失(我觉得对?)
卷积核 1*1(明显不对吧?)
basicblock强迫干啥来着?真忘了(啥残差还是啥的?)
激活函数是relu(对?)
2. seq2seq:
输入压缩信息造成损失(对?)
把输入变成词向量(对?)
编码解码结构(对?)
需要人工提取特征(明显错?)
3. 集成学习
bagging降低方差(对?)
boosting降低偏差(对?)
bagging boosting都可以并行(错?)
bagging权重一样,boosting越错权重越大(对?)

懂行的大佬帮我看看,我这破水平有希望拿任何一个offer吗?哭哭,太菜了,被自己菜枯。

#美团暑期实习笔试##美团##笔经#
全部评论
怎么看通过多少?
1 回复 分享
发布于 2022-03-12 18:39
第二题可以参考前缀和,把前i个数的乘积都算出来存起来,然后双重循环遍历所有子序列的其实和终止位置,O(n2)复杂度能AC 第三题回溯 第四题贪心,每次爆炸前 从爆炸处开始往后搜索最晚出现的新房间作为新位置以减少移动次数
1 回复 分享
发布于 2022-03-12 22:23
T2 dp[i][0]表示以第i个位置结尾,乘积为-1的连续子序列个数。dp[i][1]表示....乘积为1...的个数。 if num == -1 dp[i][0] = dp[i-1][1] + 1 dp[i][1] = dp[i-1][0] else dp[i][0] = dp[i-1][0] dp[i][1] = dp[i-1][1] + 1
点赞 回复 分享
发布于 2022-03-12 18:47
加油,我还没投😥
点赞 回复 分享
发布于 2022-03-12 18:53
第二题前缀积,第三题状压,第四题dp(我用的opt算法比较怪),第五题直接做就行。
点赞 回复 分享
发布于 2022-03-12 18:54

相关推荐

评论
4
16
分享
牛客网
牛客企业服务