前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【独家重磅】来自华尔街的量化金融面试Q&A(第一期)

【独家重磅】来自华尔街的量化金融面试Q&A(第一期)

作者头像
量化投资与机器学习微信公众号
发布2018-08-01 16:17:27
8130
发布2018-08-01 16:17:27
举报

# 005

Questions1

100的阶乘(100!)后面有多少个零?

Answer1

这是一个十分简单的问题。因为10=2*5,所以0的个数就是100!因式分解后2*5(必须配对)的个数。显然因式分解中2的个数比5多,因此问题划归为5的个数决定了后面0的数量。

先来数5因子有几个:在100内,5作为因子的数有5, 10, 15, 20, 25... 总共有20个。但是注意到25, 50, 75, 100都包含了2个5作为因子(25=5*5, 50=2*5*5等)。因此对于这些数,我们要多数一次。所以总共就是有24个5因子。

因此100的阶乘后面有24个0。

Questions2

如果

其中

那么x 是多少?

Answer2

这个问题看似很困难,但是我们从一个简单的分析给出个较优的解决方案:

换句话说,当n 趋近于无穷大时,加上或减去一个x^ 应该会得到相同的结果,即:

Questions3

来自不同银行的8位宽客聚在一起喝酒。他们都想知道在坐8个人的平均工资。然而,每个人都不愿意向其他人透露自己的薪水。你能想出一个策略让这8个人在不知道别人薪水的情况下计算出在座各位稍微平均工资吗?

Answer3

这个问题有多个答案。我们给出如下的解法:

让第一个宽客选择一个随机数a,把这个随机数加到他/她的工资中,假设这个数是b。第二个宽客把他/她自己的工资加到b中,按照这个方法,依次到第八个宽客,假设最后结果是c,同时第八个宽客把结果c再给到第一个宽客手中。然后第一个宽客从c中减去a得到d,最后将d除以8,就得到了大家的平均工资。

我们简单程序实现以下:

代码语言:javascript
复制
#假设工资的范围在3000-20000之间
a = [random.randint(3000,20000) for _ in range(8)]  
print('a:',a)

b = 86940  #随机数
c = np.sum(a) + b
print('c:',c)

d = (c-b)/8
print('d:',d)

a: [6225, 4050, 10751, 14868, 5087, 7657, 5569, 4851]

c: 145998

d: 7382.25

你可能想担心这个策略是否有用,除了作为一个很好地智力题目测试面试者外,它在实践中确实有应用。例如,第三方数据提供商从所有参与公司中收集基金持仓数据,然后将信息分发给参与者。当然,大多数参与者不希望其他人知道他们持有的是什么。如果基金中的每个头寸每天都有相同ID,那么很容易从持有的基金中反推基金,并复制策略。所以不同的随机数(或者更确切地说是伪随机数,因为提供者知道在每个位置的基金ID中添加了什么数字,并且需要通过复杂的算法来实现一一映射)在分配之前被添加到基金中每个位置的基金ID中。因此,同一基金中的头寸似乎有不同ID。这防止了参与者重建其他基金。使用这种方法,参与者可以共享市场信息,同时保持匿名。

Questions4

一个钟表(按顺时针方向编号1-12)从墙上掉了下来,摔成三块。你会发现每一块上的数字之和是相等的。那么,每一块上的数字是多少呢?(不允许奇形怪状的碎块)

Answer4

使用求和方程,(1+12)*12/2=78,所以每一块的数字和必须是26,每一块上的数字必须是连续的,因为题目已经说明不允许有奇形怪状的碎块,我们很容易知道:5+6+7+8=26,但是为什么再找不到更多的连续数字加起来是26呢?

这样的假设从12点到1点在钟表上就不正确了。一旦这个错误的假设被消除,那我们的思路就变得很明朗:12+1=13,11+2=13。因此第二个碎块应该是11,12,1。那最后一块自然而然就是3,4,9,10。

Questions5

假设有98个不同的整数从1到100。有什么好的方法找出两个缺失的整数在[1,100]内?

Answer5

将缺失的整数表示为x和y。现有的整数表示为z1到z98。应用求和方程:

通过上面两个方程,我们可以很容易的解出x和y。

知识在于分享

在量化投资的道路上

你不是一个人在战斗

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量化投资与机器学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档