12
返回列表 发新帖
楼主: rb131108
跳转到指定楼层
上一主题 下一主题
收起左侧

BB onsite 4轮

🔗
何打发123 2016-10-10 21:36:24 | 只看该作者
全局:
zzgzzm 发表于 2016-10-10 13:19
"4 billion 的数里面找missing number 这个大家有什么好想法吗"?
"Cracking the Coding Interview" 里就 ...

谢谢您~ 我去找一下~ 这本书我没咋看。。。
回复

使用道具 举报

🔗
powerdesk 2016-10-10 22:13:22 | 只看该作者
全局:
何打发123 发表于 2016-10-10 21:36
谢谢您~ 我去找一下~ 这本书我没咋看。。。

应该就是把所有的数加起来, 取个mod。。。 然后两个missing数字就是one pass加起来的sum取mod, 以及数字两两的乘积, 以此类推。。。 这样用这些值可以推出 根为missing number的polynomial, 解之就可以得到想要的数字。 这样应该是空间最小的方法。
回复

使用道具 举报

🔗
何打发123 2016-10-10 22:28:14 | 只看该作者
全局:
powerdesk 发表于 2016-10-10 22:13
应该就是把所有的数加起来, 取个mod。。。 然后两个missing数字就是one pass加起来的sum取mod, 以及数 ...

一脸懵逼。。。这说的啥。。。
回复

使用道具 举报

🔗
powerdesk 2016-10-10 22:36:11 | 只看该作者
全局:
何打发123 发表于 2016-10-10 22:28
一脸懵逼。。。这说的啥。。。

假设 有 {1,2,3 ... 10} 十个数字 把数字k拿掉的话, 知道剩下九个数字的和, 再用十个数字的总和减去九个数字的和就是的少的数字k。

再假设 有 {1,2,3 ... 10} 十个数字 把数字k1和k2拿掉的话, 知道8个数字的和, 和八个数字的乘积, 就可以知道 k1+k2=-b/a 和 k1*k2=c/a, 然后解 a*x^2+b*x+c=0的方程就可以得到k1, k2.

当有多个数字missing的话, 仍然可以follow这个思路。

优化: 因为数字可能较多, 为了节省空间, 于是把 得到的和(sum of the 8 numbers, product of the 8 numbers) 除以 n 去余数。 这样就控制了储存数据的大小。

这样说, make sense么?

评分

参与人数 1大米 +2 收起 理由
水鬼田 + 2 给你点个赞!

查看全部评分

回复

使用道具 举报

🔗
zzgzzm 2016-10-11 03:14:57 | 只看该作者
全局:
何打发123 发表于 2016-10-10 21:36
谢谢您~ 我去找一下~ 这本书我没咋看。。。

Problem 12.3 (Page 72)  (Cracking the Coding Interview, 4th Ed)
回复

使用道具 举报

🔗
cicean 2016-10-11 03:37:12 | 只看该作者
全局:
powerdesk 发表于 2016-10-10 22:13
应该就是把所有的数加起来, 取个mod。。。 然后两个missing数字就是one pass加起来的sum取mod, 以及数 ...

我记得不是说,如果加起来会有溢出么? 边加边减,也可能在你上一个时候溢出。我忘了,用bitsit 还是 bit manu 什么,解决。至今没明白,怎么用。
回复

使用道具 举报

🔗
powerdesk 2016-10-11 13:36:45 | 只看该作者
全局:
cicean 发表于 2016-10-11 03:37
我记得不是说,如果加起来会有溢出么? 边加边减,也可能在你上一个时候溢出。我忘了,用bitsit 还是 bit ...

溢出 就是取余数啊, 但是如果你主动去取余数的话你就会知道那个数字。。。 取余数就可以防止溢出
回复

使用道具 举报

🔗
BRYCEMENG 2016-10-29 01:54:18 | 只看该作者
全局:
请问lz多久得到的回信啊
回复

使用道具 举报

🔗
qwert1234567 2017-1-26 23:05:12 | 只看该作者
全局:
楼主,能详细讲一下那个两个人碰见概率的问题么?
回复

使用道具 举报

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

本版积分规则

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