一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1749|回复: 18
收起左侧

[找工就业] 阅后即焚跪经

[复制链接] |试试Instant~ |关注本帖
Isabel_Chen 发表于 2016-10-15 08:39:06 | 显示全部楼层 |阅读模式

2016(10-12月)-[]CS硕士+<3个月短暂实习/全职 - 内推| 码农类全职@Snapchatfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
虽然跪了,还是谢谢阅后即焚给的经历,自己投得晚,snapchat是onsite第一面,其实题刷的还行,就是自己太紧张,话都说不好了,感觉完全跪在和面试官沟通。还好自己不喜欢LA,感觉venice beach那里治安是真心差啊,楼主在村里地广人稀人民朴实友好住惯了,一个女生走在那儿看着真的哪个都是坏人,后来我走路头都不敢抬,怕一对上眼那些黑人就要拉着了。还好这下也不用考虑了。

1. camera组白人叔叔。calculator,没有括号。 follow up:只有一对括号,加在哪里结果最大。楼主在地里并没有看过这种follow up,一下有点方,说了个brute force for loop的,然后大叔说你这个复杂度很高啊,楼主说是啊,可是我也一下想不出,试探性地说用map存已经重复计算过的结果吗,他说1+2 +3 和 3 + 2 + 1, 1 + 3 + 2都是一样结果,你如果把它们都做key要重复计算,怎么把这三个只想一个key呢,楼主真的是大写的懵逼……说那把数字和符号提出来比较比较,一致就是一个key吧,不过要提取的话不一定比直接算cost小吧,总之一直蜜汁尴尬地在讨论,到最后我问他什么解决方案后,他说sort一下成++123,我说是挺好,就是sort也要nlog(n)额,真的合算吗,他也表示要看情况。总之一直蜜汁尴尬,而且snapchat地方太难找,楼主虽然提前一刻钟就已经到了公司方圆5米的地方,但是一直绕圈不知道哪个楼是snapchat,最后好不容易问对一个路人帮忙带我过去了,就迟到了有快10分钟的样子,感觉这个有扣很多分……. more info on 1point3acres.com

2. story组亚洲小哥。meeting room。这轮面得最开心啊,小哥人很好,主动和我交流,气氛也很放松。但是我为了方便print schedule 建了个room的class,他说建多了。后来follow up one room with weights,我说dfs 用个list backtracking做,之前有做过,我有信心那个方法能行,但是他说这个复杂度高,让我想想别的,我说不用dfs吗,他说dfs行,但是想想别的数据结构做,然后……然后楼主没想出来,他后来也没说用什么,就是安慰我说没事,前面做挺好的。

3. 阿三manager。先简历问一遍,intern很详细,就花了有快半小时吧。后来写code是设计给tweet的api去getcount(string word)找关键词出现次数,还有个ontweet(int tweetID)来你自己写,结构也自己发挥,楼主一开始有点迷糊他说的每天call这个million次点在那里,getcount写的复杂度高,后来发现他是想让我把复杂的事都放在ontweet里做,这样getcount用map就可以O(1)了。虽然改好了,但是觉得自己设计得不是很有信心,follow up是搜索和关键词一起出现次数最多的词,楼主来不及写代码了,就张口跑火车扯了,说自己用graph db做过类似的功能,把关键词都建成node,在graph db里一行query就出来了,给他大概讲了一下这种东西在graph db里怎么弄。后来觉得反正也是自己电脑,应该给他展示一下的。. Waral 鍗氬鏈夋洿澶氭枃绔,

4. broadcasting组白人小哥,有个中国小哥是shadow。ip filter。但是小哥全程我不开口他就不开口,我开口问,他就说嗯问得好,但这个你自己设计啦,看怎么设计简单。但事实是我把输入设计成8.1.1.1 : 8这种形式,就要还要把8转化成00001000这种形式,其实是最麻烦的输入。在我各种忙着一通敲的时候,小哥提醒我说可以用更简单的输入,但没说是怎样的,楼主一个短路又有点懵逼,就说我知道我这个麻烦,但是我还有两三行conversion也写完了,要不我再写两分钟,写不完就想个简单input格式,白人小哥说行啊,然后又不说话了。最后楼主写完了,测试也都过了,最后几分钟问问题的时候我问小哥,刚才我只顾着写,沟通得不多,这样是不是不太好,他一脸蜜汁笑地说是沟通得少,然后告诉我怎么改我的代码可以让它更简单,然后楼主说了一点自己使用snapchat一个不太方便的地方,小哥说这个是feature,楼主一时也是无言以对额……然后就结束了。. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

总得来说,onsite第一面真的会紧张,楼主平时不是不会说话,不会沟通的人,但昨天真的是说不出话来,一直很尴尬,题虽然基本都写出来了,但是follow up基本没怎么写代码,都是讨论,而且觉得自己懂的东西没有能都发挥出来讲给面试官听。确实是自己没有经验,希望后面的面试可以越来越好,所以发一个面经攒攒人品,希望后面心仪的公司顺利拿到offer!

ps: 求问怎么跟面试官沟通好,以及没思路的时候怎么能不尴尬,然后要hint……
. 鍥磋鎴戜滑@1point 3 acres
西法的洛 发表于 2016-10-24 02:33:59 | 显示全部楼层
想问一下basic calculator II的follow up,感觉面试官说的sort并不能在做backtracking成为memorize map。-google 1point3acres
如果是.鐣欏璁哄潧-涓浜-涓夊垎鍦
1 + 2 * 3 - sort 之后成为 +*123,结果是7
1 * 2 + 3 - sort之后成为 +* 123,结果是5. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
上面这个反例说明我们sort之后的string并不足以作为我们的key. 1point 3acres 璁哄潧
我现在的想法就是在表达式里所有的符号相同,那我们就sort,如果有不同就不sort,直接存,但是感觉这种办法判断起来有点麻烦。

用dp做,bottom up来算dp[i, j], 这里dp[i, j]表示的是string从index i 到 index j (包括i 和 j) 的最大可能值。
动态方程: dp[i, j] = Max (  { dp[i, i] operate with [i+2, j] }, { dp[i, j-2] operate with dp[j, j] }  )这里的operate with 的运算符为index 分别为i + 1 和 j - 1的符号。
比如算“1+2*3 + 5”的时候,
我们先算出了
含有一个数的
dp[0,0] = 1, dp[2,2] = 2, dp[4,4] = 3, dp[6,6] = 5
含有两个数的-google 1point3acres
dp[0,2] = Max({dp[0,0] + dp[2,2] = 3}, {dp[0,0] + dp[2,2] = 3 } ) = 3
dp[2,4] = 6
dp[4,6] = 8
含有三个数的
dp[0,4] = Math({dp[0,0] + dp[2,4] = 7}, {dp[0,2] * dp[4,4] = 9}) = 9
dp[2,6] =  Math({dp[2,2] * dp[4,6] = 16}, {dp[2,4] + dp[6,6] = 11}) = 16. 鍥磋鎴戜滑@1point 3 acres
含有四个数的. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
dp[0,6] = Math({dp[0,0] + dp[2,6] = 17}, {dp[0,4] + dp[6,6] = 14}) = 17
因此最大值为17。

correct me if I am wrong..1point3acres缃
. visit 1point3acres.com for more.


补充内容 (2016-10-24 03:48):. more info on 1point3acres.com
反例1+2*3+5*6我结果是112错了
所以要用一个三维的dp 多的维度来记录加了当前加了几个括号 如果选出的最大值是两个区间相加 那么括号数为两个区间括号数目相加加一 如果相乘那么相加后不加一 如果超过1了往回找。
回复 支持 1 反对 0

使用道具 举报

hxtang 发表于 2016-10-15 09:20:36 | 显示全部楼层
如果一时没有人mock interivew,可以试试把自己做过的题写写思路
思路清楚了,think out aloud会容易很多-google 1point3acres
-google 1point3acres
跟面试官沟通的时候,可以给自己洗脑他们是你的同学,你们是一块儿做作业来着。这样压力会小很多。
没思路的时候可以试试先分析自己想要什么条件/数据,还缺什么,有时你自己就想出来了,有时面试官觉得你已经很接近了也会告诉你答案。
回复 支持 1 反对 0

使用道具 举报

muybienw 发表于 2016-10-15 08:53:29 | 显示全部楼层
没思路的时候,建议描述一下你在哪里stuck了,你现在想到了什么解决方法,为什么你觉得这些解决方法不好用,之类的。让面试官理解你现在的问题,这样他才好给你hint。
Think out loud的确不容易,多和同学做做mock interview吧。
回复 支持 反对

使用道具 举报

luochenhuan 发表于 2016-10-15 11:55:58 | 显示全部楼层
请问lz 第一题calculator 需不需要考虑operator的优先级呀? 比如 3+4*8,是按序算还是先算4*8?
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-15 12:02:19 | 显示全部楼层
muybienw 发表于 2016-10-15 08:53. 鍥磋鎴戜滑@1point 3 acres
没思路的时候,建议描述一下你在哪里stuck了,你现在想到了什么解决方法,为什么你觉得这些解决方法不好用 ...
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
嗯 我也打算多练练mock interview 感觉要会讲才行.鏈枃鍘熷垱鑷1point3acres璁哄潧
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-15 12:03:42 | 显示全部楼层
hxtang 发表于 2016-10-15 09:20
如果一时没有人mock interivew,可以试试把自己做过的题写写思路
思路清楚了,think out aloud会容易很多.鐣欏璁哄潧-涓浜-涓夊垎鍦
...

谢谢大神指点!!
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-15 12:03:59 | 显示全部楼层
luochenhuan 发表于 2016-10-15 11:55
请问lz 第一题calculator 需不需要考虑operator的优先级呀? 比如 3+4*8,是按序算还是先算4*8?

要先算4*8的
回复 支持 反对

使用道具 举报

luochenhuan 发表于 2016-10-15 12:11:50 | 显示全部楼层

刚搜了一下,发现需要用Recursive descent parser或者Shunting-yard algorithm来处理这种operator precedence问题啊。。。感觉好方。。。
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
能问一下lz是用的神马算法么?
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-10-15 12:30:55 | 显示全部楼层
luochenhuan 发表于 2016-10-15 12:11
刚搜了一下,发现需要用Recursive descent parser或者Shunting-yard algorithm来处理这种operator preced ...

Leetcode上面有这道题吧?
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-10-15 12:31:28 | 显示全部楼层
现在Onsite他家都已经算晚了嘛。。。
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-15 14:41:44 | 显示全部楼层
luochenhuan 发表于 2016-10-15 12:11
刚搜了一下,发现需要用Recursive descent parser或者Shunting-yard algorithm来处理这种operator preced ...
. from: 1point3acres.com/bbs
基础的那题就是lc 227, 用stack就好啦~
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-10-15 23:40:39 | 显示全部楼层
Isabel_Chen 发表于 2016-10-15 14:41
基础的那题就是lc 227, 用stack就好啦~

楼主能具体说一下第一题的calculator的要求嘛? 是给了表达式让求计算结果嘛? 多谢
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-16 07:31:35 | 显示全部楼层
小A要当码农 发表于 2016-10-15 23:40
楼主能具体说一下第一题的calculator的要求嘛? 是给了表达式让求计算结果嘛? 多谢

嗯嗯 输入一个string 比如 3 + 18 * 2 / 4计算结果
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-10-16 08:38:33 | 显示全部楼层
Isabel_Chen 发表于 2016-10-16 07:31
嗯嗯 输入一个string 比如 3 + 18 * 2 / 4计算结果

多谢楼主。。 那问一下,ipfilter那题,,面试官说比较简单的输入是啥呀, 我也是转成二进制字符串来做的。。。
回复 支持 反对

使用道具 举报

 楼主| Isabel_Chen 发表于 2016-10-17 01:34:02 | 显示全部楼层
小A要当码农 发表于 2016-10-16 08:38
多谢楼主。。 那问一下,ipfilter那题,,面试官说比较简单的输入是啥呀, 我也是转成二进制字符串来做的 ...
. 1point 3acres 璁哄潧
就是输入的时候就是二进制字符串,不要用8.2.3.4这种,就不用转换啦
回复 支持 反对

使用道具 举报

小A要当码农 发表于 2016-10-17 01:43:54 | 显示全部楼层
Isabel_Chen 发表于 2016-10-17 01:34
就是输入的时候就是二进制字符串,不要用8.2.3.4这种,就不用转换啦

好吧。。。那和自己转应该是一个道理呀。。 多谢楼主啦! 祝好运呀
回复 支持 反对

使用道具 举报

jocelyna 发表于 2016-10-18 11:20:21 | 显示全部楼层
IP filter是什么意思?是啥题目呀?
回复 支持 反对

使用道具 举报

fish128 发表于 2016-10-24 12:08:33 | 显示全部楼层
已经很厉害了!!666
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-3 13:03

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表