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

HRT VO 面经

全局:

2022(7-9月) 工程类 博士 全职@hudson-river-trading - 网上海投 - Onsite  | 😐 Neutral 😫 Hardest | WaitList | 应届毕业生
HRT Algo Engineer Test
三道非常难的题 两小时10分钟
没有摄像头 不录屏 查了很久都
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
03 +8:00):
标题写错了  是OA

本帖子中包含更多资源

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

x

评分

参与人数 3大米 +27 收起 理由
匿名用户-B23WJ + 25
clover1206 + 1 很有用的信息!
fck + 1 很有用的信息!

查看全部评分


上一篇:Bloomberg 面經
下一篇:Bloomberg NG 过经 | Timeline
推荐
 楼主| Acetui 2022-9-24 21:28:56 | 只看该作者
全局:
Somebodywhocare 发表于 2022-9-23 17:09
求第三题答案!谢谢!
  1. from itertools import permutations
  2. def isSolvable(words, result):
  3.     # we need begins set to track start letters if word is longer than one to not have them as 0
  4.     begins = {result[0]} if len(result) > 1 else set()
  5.    
  6.     # the idea to have counter is to sum repeted letters based on where they are in the word
  7.    
  8.     c = Counter()
  9.     for w in words:
  10.         if len(w) > 1:
  11.             begins.add(w[0])
  12.         for i,l in enumerate(w[::-1]):
  13.             c[l] += 10**i
  14.    
  15.     # we subtract "result" letters from the counter
  16.     for i,l in enumerate(result[::-1]):
  17.         c[l] -= 10**i
  18.         
  19.     # we get at the end something like that Counter({'S': 1000, 'E': 91, 'R': 10, 'D': 1, 'Y': -1, 'N': -90, 'O': -900, 'M': -9000})
  20.    
  21.     # lets split problem into 2 let's check positive letters and negative
  22.     pos = []
  23.     neg = []
  24.     for l, v in c.items():
  25.         if v > 0:
  26.             pos.append( (l,v) )
  27.         elif v < 0:
  28.             neg.append( (l,-v) )

  29.     # if not neg and not pos:
  30.     #     return True
  31.    
  32.     if not neg or not pos:
  33.         # False if begins else True this one is needed for words with one letter like words = ["A","B"], result = "A"
  34.         return 0 if begins else 9
  35.    
  36.     NN = len(neg)
  37.     NP = len(pos)
  38.    
  39.     # we need this one to process permutaion with the smaller number first
  40.     # that would optimize speed
  41.     if NN > NP:
  42.         neg,pos = pos,neg
  43.         NN,NP = NP, NN
  44.    
  45.     # we create dict with list of sets of permutations
  46.     # keys sum of digit for letter * coefficient
  47.     nd = defaultdict(list)
  48.     for used in permutations(list(range(10)), NN):
  49.         if 0 in used and neg[used.index(0)][0] in begins:
  50.             continue
  51.         nd[sum(v * used[i] for i,(l,v) in enumerate(neg))].append(set(used))
  52.    
  53.     # same for the other part
  54.     # but while we are doing that we check if overlap of digits is missing

  55.     count = 0
  56.     for used in permutations(list(range(10)), NP):
  57.         if 0 in used and pos[used.index(0)][0] in begins:
  58.             continue
  59.         s = sum(v * used[i] for i,(l,v) in enumerate(pos))
  60.         s1 = set(used)
  61.         if s in nd:
  62.             for s2 in nd[s]:
  63.                 if not s1 & s2:
  64.                     count += 1

  65.     return count


  66. def solution(crypt):
  67.     return isSolvable(crypt[:-1], crypt[-1])
复制代码

评分

参与人数 2大米 +2 收起 理由
面瘫少女 + 1 很有用的信息!
在晚上 + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

推荐
 楼主| Acetui 2022-9-23 02:51:18 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

推荐
 楼主| Acetui 2022-9-23 02:53:02 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
 楼主| Acetui 2022-9-23 02:52:16 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

全局:
求第三题答案!谢谢!
回复

使用道具 举报

地里匿名用户
🔗
匿名用户-GVO6M  2022-9-24 22:04:32 来自APP
VO 是virtual onsite呀 这个叫OA online assessment
回复

使用道具 举报

🔗
 楼主| Acetui 2022-9-25 00:04:55 | 只看该作者
全局:
匿名用户 发表于 2022-9-24 09:04
VO 是virtual onsite呀 这个叫OA online assessment

写错了。。。
回复

使用道具 举报

地里匿名用户
🔗
匿名用户-UNIMJ  2022-9-25 05:15:40
LZ可以解释一下你第二题跟第三题的答案吗? 另外你第二题的答案有错
回复

使用道具 举报

🔗
 楼主| Acetui 2022-9-28 03:05:19 来自APP | 只看该作者
全局:
匿名用户 发表于 2022-09-24 14:15:40
LZ可以解释一下你第二题跟第三题的答案吗? 另外你第二题的答案有错
都是网上搜到的
这些答案是在CoderPad上的草稿 submit前调了很多
回复

使用道具 举报

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

本版积分规则

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