湾区入手小黑屋的经验和要躲的坑

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货

最近看过此主题的会员

坐标湾区
DreamCraft创始团队
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
前Google华人高管创立
面试offer一键直通
Leap.ai助你进入热门独角兽
查看: 20112|回复: 84
收起左侧

给Google onsite面经添砖加瓦

  [复制链接] |试试Instant~
我的人缘0
猫头鹰也是猫 发表于 2016-10-16 11:37:32 | 显示全部楼层 |阅读模式
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (56)
 
 
0% (0)  踩

2016(10-12月) 码农类General 硕士 全职@Google - 猎头 - Onsite  | Other | fresh grad应届毕业生

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

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

x
等结果太焦虑发个面经吧。。虽然之前花了基本一周的时间刷近期面经,但除了俩lc原题外一题面经都没考到。的确刷G的面经回报率太低,还不如把刷过的lc多夯实总结更有效。所以接下来的你们就凑活着看吧……

第一轮:超级nice的国人姐姐。因为到的比较早,先去kitchen拿了点零食然后闲聊了半天G家的室内装潢(……)和简历上的经历。题目是给一个positive integer N,求N最少能由几个2^i组成。比如N=1的时候,1=2^0,那么N最少能被1个2^0组成。再比如N=7的时候,7=4+2+1=2^2+2^1+2^0,这个case中N最少被3个2^i组成。然后follow up是,可以同时使用正或负的2^i。同样的例子N=7,在这个情况下,7=8-1=2^3-2^0,这样最少只需要2个2^i就能组成N。

第二轮:台湾葛格,人也挺nice的。没有废话直接上题,就是lc的bomb enemy,不同的是bomb也能放在enemy所在的位置。第二题是给一个iterator: 2,3,1,5,1,8… 要求写一个iterator要能return 3,3,5,8…

第三轮:印度姐,
游客,本帖隐藏的内容需要积分高于 188 才可浏览,您当前积分为 0。
查看如何攒积分 Click here for more info.

第四轮:白人小哥,看起来就智商很高的那种。题目是给一瓶药,里面100颗完整的药片,每天需要吃半颗。每天吃的方法是随机从瓶子里取一颗药,如果是整颗就吃半颗,剩下半颗扔回瓶子里;如果取出的是半颗,那就直接吃掉。第一小问是simulate这个过程,然后print每天瓶中剩下的整颗和半颗的数量,直到空瓶。第二问是,求整个simulation过程中,瓶中剩下1整颗,0半颗的概率。最后问了running time。

除了印度姐姐全程冷漠脸以外其他面试官都很热情友好,交流得也很顺畅……一天下来感觉面试总体难度还行,并没有某些面经那么难(面之前看别人的面经真是吓得不轻……) 接下来默默等结果吧,也希望大家都能遇到原题,拿到心仪的offer!加油!!



补充内容 (2016-10-18 02:03):
哇效率奇高,面完一周就告知我过HC了!希望大家也能早日收到好消息!

评分

参与人数 6大米 +45 收起 理由
cr025 + 3 很有用的信息!
williamflea + 3 欢迎来介绍你知道的情况
WhatsFLAG + 3 今日最后三分,拿走不谢
atgcaugc + 3 欢迎来一亩三分地论坛!
zzwcsong + 30
dobbin + 3 感谢分享!

查看全部评分


上一篇:妹有套路的微软On Campus
下一篇:T电

本帖被以下淘专辑推荐:

我的人缘0
海盗包子 发表于 2016-10-20 04:04:10 | 显示全部楼层
本楼: 【顶】   100% (2)
 
 
0% (0)   【踩】
全局: 顶  94% (33)
 
 
5% (2)  踩
robinbach 发表于 2016-10-19 20:23
第四题1/199 相当于200片药总共100对 吃到最后两片是一对的概率 200选2除以100选1 得1/199 要是这样想不通 ...

不能这么想吧, 假设剩下1整片和1半片,这样取出一个半片的概率是1/2,
按照你的想法200个半片是等概率的,取出半片的概率是1/3,
所以必须编程simulation...
回复

使用道具 举报

我的人缘0
raychien 发表于 2016-10-17 02:16:47 | 显示全部楼层
本楼: 【顶】   100% (2)
 
 
0% (0)   【踩】
全局: 顶  98% (154)
 
 
1% (3)  踩
yxyxyx 发表于 2016-10-16 23:35
不是啊,我的算法仍然是4啊
111,000,000,011 (+1) -> 111,000,000,100 (往右进两位)-> 001,110,000,001 ...

你的思路跟我挺像的,不過你用+1 -1來說明,我想很難讓大家看懂。這題的關鍵在於可以用+1把多個1,ˊ轉化成兩個1。假設你有一個數是111...1 (n個1),原本的表示法需要用n個2^x來表示,但是+1之後,數字變成了1000...0 (1個1後面帶n個0),只需要1個2^x表示,加上你要把多加的1 (2^0) 扣回去,所以原數字可以用兩個2^x表示。-1並不是很必要,反正right shift都會被吃掉。
. 1point 3acres 论坛
思路:. from: 1point3acres
一開始count = 0
. more info on 1point3acres看least significant bit
->是0忽略
->是1的話,count++,然後往左看有無連續1 (實際上看左邊一位就行)
    ->左邊是1,+1讓他進位
    ->左邊是0忽略
往右shift一個bit,重複上述步驟ˋ直到number變成0
-google 1point3acres
實際上遇到1個1就count++,為什麼呢?假如這個1是單獨的,那麼我們必定要用一個2^x表示它。假如是連續的,那麼如上面所說,我們可以用+1進位後,用兩個2^x來表示,這邊count++是先算你多加的1 (2^0),另外一個1因為被你進位跑去左邊了,所以之後遇到他會是單獨的1,到時候你還是會算到他,所以總共是兩個1。
回复

使用道具 举报

我的人缘0
yxyxyx 发表于 2016-10-16 12:44:21 | 显示全部楼层
本楼: 【顶】   100% (2)
 
 
0% (0)   【踩】
全局: 顶  97% (678)
 
 
2% (15)  踩
猫头鹰也是猫 发表于 2016-10-16 00:14
第一问应该没问题,但第二问还不大对,你看7那个例子

第二问做法和leetcode397很像:
对于当前的n如果n%2 == 0那就把n往右进一bit;
如果n%2 != 0那么分两种情况:
如果n的最后两bit是3,那么就n+1;否则的话(最后两bit是1)那么就n-1;
最后就记录下n+1或n-1的次数就好
. more info on 1point3acres
比如对于n=7的算法是:.1point3acres网
7 (+1)-> 8 -> 4 -> 2 -> 1 (-1) -> 0

. From 1point 3acres bbs两次+1或-1,所以答案是2

7 (最后两bit是1) -> 6. visit 1point3acres for more.

补充内容 (2016-10-16 00:44):
忽视最后一行。。。。
回复

使用道具 举报

我的人缘0
codemonk 发表于 2017-9-27 23:23:03 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  94% (71)
 
 
5% (4)  踩
第四轮再上个memo + DFS的版本。。。
  1. unordered_map<int, double> cache;

  2. double dfsMemo(int w, int h, int wt, int ht, int bound){
  3.     if(w == wt && h == ht) return 1.0;.1point3acres网
  4.     if(cache.count(w*bound + h)) return cache[w*bound + h];
  5.     return cache[w*bound + h] = (w>wt ? double(w)/(w+h) * dfsMemo(w-1, h+1, wt, ht, bound) : 0)
  6.                                 + (h>0 ? double(h)/(w+h) * dfsMemo(w, h-1, wt, ht, bound) : 0);
  7. }-google 1point3acres

  8. int main(int argc, const char * argv[]) {
  9.     // insert code here...
  10.     cout << dfsMemo(10, 0, 0, 2, 11) << endl;
  11.     return 0;
  12. }. 1point3acres
复制代码

21.000+ students read the Road to learn React. The course weaves all the opinionated roadmaps into one roadmap to master React. It gives you all the fundamentals in React. You will build a Hacker News App along the way.

回复

使用道具 举报

我的人缘0
magic95 发表于 2016-10-19 05:52:18 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  100% (5)
 
 
0% (0)  踩
samuelling 发表于 2016-10-19 04:26
请问楼主,onsite之后recruiter多久会follow up和你说送hc啊,我昨天onsite之后给recruiter写了一封thank y ...
. visit 1point3acres for more.
至少要等interviewer把feedback都提交给HR,以及等到下一个HC开会的日子才会送HC. 刚面完不着急啦~
回复

使用道具 举报

我的人缘0
海盗包子 发表于 2016-10-18 09:26:31 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  94% (33)
 
 
5% (2)  踩
网上看到了一个关于第四轮第二问的解法,http://www.feynmanlectures.info/solutions/half_pills_sol_3.pdf. 围观我们@1point 3 acres
主要是   leaving the bottle by considering w and h not as integer numbers of pills but as real-valued (mean) quantities of pills
回复

使用道具 举报

我的人缘0
yxyxyx 发表于 2016-10-16 22:50:55 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  97% (678)
 
 
2% (15)  踩
wtcupup 发表于 2016-10-16 04:11
给一个iterator: 2,3,1,5,1,8… 要求写一个iterator要能return 3,3,5,8…  
why return 3,3,5,8 ?
. 牛人云集,一亩三分地
意思应该是说第一个iterator的含义是2个3,1个5,1个8...

With React+D3v4 you'll learn the basics of building fast data visualization components in about an hour.

回复

使用道具 举报

我的人缘0
jfree811 发表于 2016-10-16 11:50:49 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  100% (39)
 
 
0% (0)  踩
第一问是不是就是让你求二进制数上面 所以1的个数?然后follow up的解法是不是从二进制数从最右开始有多少个连续的1 比如39 = 100111 最后连续3个1 所以可以简化成 2^5 + 2^3 - 2^0
不知道这样思路对不对啊?lz求回答
回复

使用道具 举报

我的人缘0
jfree811 发表于 2016-10-16 11:43:34 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (39)
 
 
0% (0)  踩
话说google面试的时候能和中国面试官说中文吗?之前看别人写的帖子有提到直接中文交流。
回复

使用道具 举报

我的人缘0
EmilyMMMM 发表于 2016-10-16 11:57:18 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  98% (134)
 
 
1% (2)  踩
jfree811 发表于 2016-10-16 11:43
话说google面试的时候能和中国面试官说中文吗?之前看别人写的帖子有提到直接中文交流。

不可以跟中国面试官说中文。至少你不要主动说,主动说会显得很不professional。

Learn React.js, Redux & Immutable.js while building a weather app

回复

使用道具 举报

我的人缘0
yxyxyx 发表于 2016-10-16 12:07:33 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  97% (678)
 
 
2% (15)  踩
jfree811 发表于 2016-10-15 23:50
第一问是不是就是让你求二进制数上面 所以1的个数?然后follow up的解法是不是从二进制数从最右开始有多少 ...

是这个意思。其实从某个角度上这题和Leetcode397很像。
回复

使用道具 举报

我的人缘0
chestnut9919 发表于 2016-10-16 12:11:48 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (20)
 
 
0% (0)  踩
jfree811 发表于 2016-10-16 11:50
第一问是不是就是让你求二进制数上面 所以1的个数?然后follow up的解法是不是从二进制数从最右开始有多少 ...

你好机智啊 膜拜大神
回复

使用道具 举报

我的人缘0
 楼主| 猫头鹰也是猫 发表于 2016-10-16 12:14:46 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (56)
 
 
0% (0)  踩
jfree811 发表于 2016-10-16 11:50
第一问是不是就是让你求二进制数上面 所以1的个数?然后follow up的解法是不是从二进制数从最右开始有多少 ...

第一问应该没问题,但第二问还不大对,你看7那个例子
回复

使用道具 举报

我的人缘0
jfree811 发表于 2016-10-16 12:31:55 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (39)
 
 
0% (0)  踩
猫头鹰也是猫 发表于 2016-10-16 12:14
第一问应该没问题,但第二问还不大对,你看7那个例子
. 围观我们@1point 3 acres
7 = 111 所以连续三个1的话 就是 2^3 - 2^0  应该是对的吧?
回复

使用道具 举报

我的人缘0
jfree811 发表于 2016-10-16 12:31:59 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (39)
 
 
0% (0)  踩
猫头鹰也是猫 发表于 2016-10-16 12:14
第一问应该没问题,但第二问还不大对,你看7那个例子

7 = 111 所以连续三个1的话 就是 2^3 - 2^0  应该是对的吧?
回复

使用道具 举报

我的人缘0
chestnut9919 发表于 2016-10-16 12:33:28 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (20)
 
 
0% (0)  踩
求问楼主第四题用了什么方法?用什么数据结构存的药片?
回复

使用道具 举报

我的人缘0
yxyxyx 发表于 2016-10-16 12:39:30 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  97% (678)
 
 
2% (15)  踩
第四轮的第二问是说最后还剩一整片的概率是多大嘛?

补充内容 (2016-10-16 00:40):. 围观我们@1point 3 acres
如果是的话那概率就是1/199吧
回复

使用道具 举报

我的人缘1
Hmoon 发表于 2016-10-16 12:49:45 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  89% (98)
 
 
10% (11)  踩
yxyxyx 发表于 2016-10-16 12:07
是这个意思。其实从某个角度上这题和Leetcode397很像。

我的理解是followup是如果有连续三个1后者更多就加个1,这样进位导致1的减少大于加个1带来的个数

补充内容 (2016-10-16 12:51):
.1point3acres网oops,没看到后面内容,理解是一样的
回复

使用道具 举报

我的人缘0
jfree811 发表于 2016-10-16 12:57:22 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (39)
 
 
0% (0)  踩
yxyxyx 发表于 2016-10-16 12:44
第二问做法和leetcode397很像:
对于当前的n如果n%2 == 0那就把n往右进一bit;
如果n%2 != 0那么分两种 ...

赞呀!!!!
回复

使用道具 举报

我的人缘0
wtcupup 发表于 2016-10-16 16:11:44 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  61% (348)
 
 
38% (215)  踩
给一个iterator: 2,3,1,5,1,8… 要求写一个iterator要能return 3,3,5,8…  
why return 3,3,5,8 ?
回复

使用道具 举报

我的人缘0
mad_air 发表于 2016-10-16 17:44:35 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (14)
 
 
0% (0)  踩
楼主好运

请问第四题第二问那个概率怎么求的啊?是直接写算式还是写代码啊?
回复

使用道具 举报

我的人缘0
knight0clk 发表于 2016-10-16 22:54:16 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  91% (91)
 
 
9% (9)  踩
yxyxyx 发表于 2016-10-16 12:44.本文原创自1point3acres论坛
第二问做法和leetcode397很像:
对于当前的n如果n%2 == 0那就把n往右进一bit;
如果n%2 != 0那么分两种 ...

这个题目的确和LC397很像,但是有区别。但是都是通过贪心算法解决。个人认为@Hmoon的解法很对的,直接了当。至于你说的这种方法,存疑,感觉只记录n+1, n-1次数不对。比如说111,000,000,011。对于这个 case,答案是4,但是如果只记录加减次数,结果是3
回复

使用道具 举报

我的人缘0
knight0clk 发表于 2016-10-16 22:57:14 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  91% (91)
 
 
9% (9)  踩
猫头鹰也是猫 发表于 2016-10-16 12:14
第一问应该没问题,但第二问还不大对,你看7那个例子

楼主,可以解释下为什么不对吗?我没有想明白,感觉是正确的
回复

使用道具 举报

我的人缘0
 楼主| 猫头鹰也是猫 发表于 2016-10-16 22:57:15 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  100% (56)
 
 
0% (0)  踩
yxyxyx 发表于 2016-10-16 12:39
第四轮的第二问是说最后还剩一整片的概率是多大嘛?

补充内容 (2016-10-16 00:40):

后来在坛子里搜了原来有这个题的面经,思路大致就是用dfs+memoization。传送门http://www.1point3acres.com/bbs/ ... 2BOnsite&page=1
回复

使用道具 举报

游客
请先登录

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

手机版|小黑屋|一亩三分地论坛声明

GMT+8, 2018-9-26 05:00

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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