回复: 28
跳转到指定楼层
上一主题 下一主题
收起左侧

Google OA挂经 SWE new grad early career

 
🔗
匿名用户-KSW1R  2022-3-28 05:01:56 来自APP |倒序浏览

2022(1-3月) 码农类General 本科 全职@google - 网上海投 - 在线笔试  | 😃 Positive 😐 Average | Fail | 应届毕业生

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
您好!
本帖隐藏的内容需要积分高于 10 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 10 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies

评分

参与人数 6大米 +9 收起 理由
momozzz + 1 赞一个
1667347440 + 1 赞一个
wsqwsq + 1 很有用的信息!
psyche_睿睿 + 1 很有用的信息!
浮世贴 + 1 赞一个

查看全部评分


上一篇:Roblox MLE 现场表演面经
下一篇:Aurora 面经一枚 求加点米 感谢感谢
推荐
minghaocui 2022-4-28 02:00:09 | 只看该作者
全局:
第一题可以用 greedy,    从最小的even number开始算,2, 4, 6, 8  ....,    也就是找到最小的N,N * (N + 1 ) < input_number,    可以线性查找N(slow) 或者binary search,input 如果数字很大, binary search 会很快。  答案是 N + 1.
第二题,暴力解是列举所有的substring, 记录所有字母的出现frequency,  (26)N^2,  一个优化是可以限制出现相同次数的unique character number (U),   for 1 <= U <= 26,  可以用经典的双指针sliding window O(N) 求解,迭代26次取最大值就是答案,N 很大时会有速度优势, O(26N)。      

评分

参与人数 1大米 +1 收起 理由
RitaVQIO + 1 赞一个

查看全部评分

回复

使用道具 举报

推荐
mron 2022-4-4 08:11:17 | 只看该作者
全局:
小亩_5d1794a 发表于 2022-4-3 15:42
谢谢您共享信息!我看了frequency tuple的讨论,但是还没明白具体算法。请问您有兴趣再讲一下吗?非常感 ...

这里我们需要用一个长度为25 的array 来记录相对frequency, 假设我们拿3个字母举例,那么我们需要的array 就只有2个长度

比如在某个index i 这个array是[2 2] 说明 到i 这里为止, b 比a 多2个,c 比a 多两个,(比如 abbcc)我们记录一下这个tuple 已经对应的 index  i  ,存到map 里

下次到index j 的时候如果 出现的tuple 是[2 2] (比如abbccabc), 这时候只需要查一下就能知道这个tuple 在index 为i的时候出现了, 所以 j - i 就是满足 出现频率一致的 substring
(因为 0到i 和0到j 的字母相对差一样,所以相互减掉这样所有字母和 第一个字母的差都变成0 了就满足我们的条件)

不知道有没有讲清楚;-;
回复

使用道具 举报

全局:
匿名用户 发表于 2022-03-27 18:38:26
请问第一题的解法要怎么确认数组最后一个数字加上N - currentSum是一个even number呢?
因为所有element都是even的所以n是odd的话不存在结果可以直接return
回复

使用道具 举报

🔗
mron 2022-3-28 09:22:18 来自APP | 只看该作者
全局:
最近google oa好像都是这两题,刚好朋友最近也碰到这俩
第一题 直接i 从2 开始loop 每个even number 加到cursum 上
直到cursum + i 大于 N 的时候 把 N - curSum 加到result list里最后一个数字上就可以,感觉是贪心算法?

第二题 暴力解能过,因为input string最长也就80

回复

使用道具 举报

地里匿名用户
🔗
匿名用户-V85LQ  2022-3-28 09:38:26
mron 发表于 2022-3-27 18:22
最近google oa好像都是这两题,刚好朋友最近也碰到这俩
第一题 直接i 从2 开始loop 每个even number 加到cu ...

请问第一题的解法要怎么确认数组最后一个数字加上N - currentSum是一个even number呢?
回复

使用道具 举报

🔗
Cinny080808 2022-3-28 09:46:23 | 只看该作者
全局:
LZ是什么时候投的简历呢?
回复

使用道具 举报

全局:
第二题感觉可以存一个hashmap记录各种出现的最早时间。比如自己有abcd的话你就只记录bcd,出现bcd的时候正常increment,出现a的时候就所有值-1。这样只要出现重复的key就代表中间substring里所有char出现次数一样多

评分

参与人数 1大米 +1 收起 理由
tygen + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

地里匿名用户
🔗
匿名用户-HWB7P  2022-3-28 19:43:44
这些题还在用,看这网站的还有三哥,不要给自己争光了
回复

使用道具 举报

🔗
mron 2022-3-29 07:00:46 来自APP | 只看该作者
全局:
微信用户_6cfb26e 发表于 2022-03-27 18:59:38
因为所有element都是even的所以n是odd的话不存在结果可以直接return
对的,第一个corner case就先check N是不是 even,如果不是的话直接return 了
回复

使用道具 举报

🔗
patrickwhj 2022-4-2 02:31:57 | 只看该作者
全局:
mron 发表于 2022-3-27 18:22
最近google oa好像都是这两题,刚好朋友最近也碰到这俩
第一题 直接i 从2 开始loop 每个even number 加到cu ...

不大对吧,如果N=8, 结果应该是 [2,6]?
回复

使用道具 举报

🔗
mron 2022-4-2 02:38:59 | 只看该作者
全局:
patrickwhj 发表于 2022-4-1 11:31
不大对吧,如果N=8, 结果应该是 [2,6]?

2 + 4 cursum 是6, 再加6 大于8 所以吧 8 -(2 + 4) 加到最后一个数也就是4 上面, 得到 2,6
已经交过而且过了当时所有的test case的,应该是没问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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