Pocket Gems onsite 面经

原帖地址:一亩三分地

工作环境很彩色,没有office和隔板,大家都在大桌子上码代码。有乒乓球桌,kitchen,游戏主机,不知道为啥还看到好几只QQ企鹅。。。
和板上其他同学的观感一样,hr确实有点傲慢~~

round1 印度小哥
1)sliding window
2)first missing number
follow up :
有一个很长的array,里面的数字不是出现1次就是3次,找出出现3次的。hashmap不满意,用了bit存
有一个很长的array,里面的数字不是出现2次就是4次,找出出现4次的
有一个很长的array,1-n, 其中有一个number missing了怎么做?

round2 白人小胖哥
1)成就系统
玩家有动物,金币,level。当玩家达到某种requirement(玩家所拥有的东西达到某种标准),就会得到某种achievement,achievement里面会奖励玩家动物(或其他东西)。OO design一下,要求code extensible,要注意里面的参数应该何种方式传递。
感觉面得很烂,小白胖哥的脸都有点抽筋了~~,以为他要出去叫hr赶我走了。。

round3 印度高哥
已经打算收拾行李走路了,看到一个engineer进来心里稍微安慰了点
1)max product subarray
这题代码太熟了,以至于里面维护的一些变量的意义有点遗忘了,被问得有点木~~
2)topological sort那题,

round4 印度小胖哥
1)机器人走路那题。
机器人从原点(0,0)出发,它的coordinate x 和 y 的digit之和不能大于某个数 k。比如(17, 24) digit之和 1 + 7 + 2 + 4 = 14。求坐标上所有有效点的个数。
我就用了DFS和HashSet。然后深入讨论了DFS,hashcode的选取以及冲突,以及为什么会有boundary,最后在假设知道boundary的情况下的时间复杂度
这一轮面到一半的时候,hr在玻璃墙外暗示小胖哥快点结束,意思是不要浪费时间在他身上了,我们想下班了

拒信应该在路上了,积累点经验也不错,他们的面试题目还挺好的,有锻炼价值…

求大米,多谢各位看帖~~~