推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 398|回复: 3
收起左侧

bloomberg 电面

[复制链接] |试试Instant~ |关注本帖
boy27910230 发表于 2017-6-16 01:09:13 | 显示全部楼层 |阅读模式

2017(7-9月) 码农类 硕士 全职@Bloomberg - 猎头 - 技术电面 在线笔试 |Other在职跳槽

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

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

x
刚挂的电话。面试官国人大哥,人很好一直给我提示,可是本人太水第二道还是没做出来

1. 在一个先上升后下降的数组里找target, 要求 speed < O(n)
e.g. 在数组 [1,2,3,4,5,19,18,17,16,15] 中找16,
做法是先O(log(n)) 找到peak, 然后if peak == target, return peak index; else if target < peak, 在peak的左边binary search; else 在peak的右边binary search。总时间O(log(n))

2. 找出所有6位整数中有多少前三位的和等于后三位的和。有leading zero的不算。
e.g. 012012 不算, 102012算, 123213也算
简单做法是暴力循环所有100000 - 999999检查每个数的前三位和后三位的和是否相等,Time = 6*900000. from: 1point3acres.com/bbs
高级做法是前三位的和只有可能在1-27之间(100-999), 所以建两个长度27的数组(first3digits[27], last3digits[27]),index + 1表示sum, value表示可能的组合数。第一个数组存储前三位每个sum的可能组合数,第二个数组存后三位的。
循环100-999在两个数组存前三位和后三位所有包含相同digits的组合数。
e.g. 100的话后三位可能有100, 010, 001, 所以first3digits[0] += 1,  last3digits[0] += 3。
123的话后三位有可能是123,132,213,231,312,321, 所以first3digits[5] += 1,  last3digits[5] += 6
result = first3digits[0]*last3digits[0] + first3digits[1]*last3digits[1] + ..... + first3digits[26]*last3digits[26]
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

估计是挂了,move on...

评分

1

查看全部评分

chaseqi 发表于 2017-7-4 04:56:11 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
谢谢 楼主分享啦 感觉第二题比一般的BB onsite的题都要难一点 楼主加油
回复 支持 反对

使用道具 举报

 楼主| boy27910230 发表于 2017-7-4 05:42:34 | 显示全部楼层
关注一亩三分地微博:
Warald
chaseqi 发表于 2017-7-3 14:56
谢谢 楼主分享啦 感觉第二题比一般的BB onsite的题都要难一点 楼主加油

那道题是BB的高频题,很多组都用,尤其是MARS组,面之前一定要看这道。。。
回复 支持 反对

使用道具 举报

chaseqi 发表于 2017-7-4 05:48:08 | 显示全部楼层
boy27910230 发表于 2017-7-4 05:42
那道题是BB的高频题,很多组都用,尤其是MARS组,面之前一定要看这道。。。
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
恩恩 谢谢楼主! 刚才做了下
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-25 13:13

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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