📜  高盛面试体验(校园 2020)

📅  最后修改于: 2022-05-13 01:58:12.041000             🧑  作者: Mango

高盛面试体验(校园 2020)

第一轮:这是一个校园招聘活动。大约 700 名学生参加了第一轮,即 Hackerrank 的编码轮。编码轮由不同的部分组成,有 2 个简单的编码问题和 1 个困难的问题,大约 8 个基本数学能力的 MCQ 和 8 个 CS Fundamentals 的 MCQ。我能够解决所有 MCQ 和 2.5 编码问题。大约有 10 人入围了面试轮次。

MCQ 是基本且可解决的。编码问题是:

  1. 给出 N 个字符串。将每个字符串分成两半,并确定字符串右半部分的字母是否可以重新排列以形成回文。所有字母都必须用于创建回文。如果可以形成回文则打印 Y,如果不能形成回文则打印 N。如果输入字符串的长度是奇数,则应该进行拆分,以使右半部分比左半部分多一个字母

  2. 考虑一棵有 N 个节点(1 个根节点和 N-1 个子节点)的二叉树。如果该节点的一个子树(左或右)的和为偶数,而另一个子树的和为奇数,则该树中的节点称为魔术父节点。只有一个子节点或没有子节点的节点永远不能成为神奇的父节点。树表示为每个节点到 Root 节点的一系列关系,例如 L、R、LL、LR.. 等等,其中每个节点是左 (L) 到 Root 或左-左 (LL) 或右-left (RL) 到 Root 等等。编写一个程序来查找树中所有的 Magic 父节点,并将它们的总和打印为输出。

    • 输入格式:输入的第一行包含一个整数,树中有N个节点第二行输入包含一个整数根,即树的根。

      接下来的 N-1 行输入包含一个字符串S 和一个整数 X,由一个空格分隔,其中 X 是树中的一个节点,S 是 Root 和 X 之间的关系。

    • 输出格式:输出包含树中所有 Magic 父节点的总和

    • 样本输入:

      9
      11
      L 23
      R 44
      LL 13
      LR 9
      RL 22
      RR 7
      RLL 6
      RLR 15
    • 样本输出:

      33
  3. 这是友谊日!迪皮卡很想用一束她知道乔蒂喜欢的特殊鲜花来祝福她的朋友乔蒂。这束花只能用一些特殊的花组合而成,如果缺少一朵花,那将是不完整的。这些花在镇上的不同商店出售,迪皮卡计划在从她家到乔蒂办公室的路上参观这些商店。每家商店只卖一种花,迪皮卡不想浪费时间,所以在到达乔蒂的办公室之前,她需要准确地拜访一家卖每种花的商店。迪皮卡家旁边有一家花店,乔蒂办公室旁边有一家,所以她还是打算去看看那两家。

    帮助迪皮卡找到收集所有鲜花并到达乔蒂办公室的最短路径,同时访问一家专门销售每种鲜花的商店。您可以假设始终存在至少一条这样的路径。

    • 输入格式:单行中的多个输入始终由单个空格分隔。商店用它们的名字表示为字符串(长度>=1),鲜花用数字表示。

      输入的第一行有一个整数 n

      接下来,n行输入格式如下:sfd x1 x2

      在哪里

      s 是店铺名称

      f 是该商店可用的花卉类型

      x1 x2 等是与 s 距离为 d 的店铺名称

      如果距离 d 处只有一家商店,那么如果在相同距离处有多家商店,则只给出 x1,所有这些商店都列在同一行中。

      最后一行输入将有 u 和 v,其中 u 是第一个商店(Deepika 的房子在哪里),v 是最后一个商店(Jyoti 的办公室在哪里)。

    • 输出格式:输出包含 u、v 以及 Deepika 必须经过的最小距离才能获得所有鲜花并到达 Jyoti 的办公室。

    • 样本输入 1:

      5
      a 3 1 b e
      b 2 2 c
      c 1 1 d
      d 5
      e 2
      a d
    • 样本输出 1:

      a d 4
    • 解释:

      给定样本输入的图表

      “a 3 1 b e”这一行解释如下:商店'a'销售3型花,距离商店'b'和'e'1个单位距离

      行“d 5”解释如下:商店“d”销售5 型花,除其他行中已给出的商店外,没有与“d”相关的其他商店。五种不同的商店有四种花:shop 卖 3,b 和 e 卖 2,c 卖 1,d 卖 5。

      Deepika 的房子在“a”,Jyoti 的办公室在“d”。迪皮卡收集所有花朵时可以走的最短路径是 abcd,这意味着她可以走 4 个单位的距离。

第 2 轮(面试):这一轮是在 Hackerrank Codepair 上进行的,向所有候选人提出了一些标准问题。其中一些是:

  • 下一个较小的元素
  • 使最大数组元素最多相差 k 个增量,每个增量为 1。 [O(n) 使用 2 ptr 和前缀和]
  • 合并重叠区间
  • 岛屿数量
  • 拓扑排序
  • 其他标准 Geeksforgeeks 问题

第三轮(面试):

  • 会议安排程序
  • 在数组中查找局部最小值
  • 打印二叉树的顶视图
  • 在系统中给定多个进程和多个线程的 O(logn) 时间复杂度的打印前缀和数组。
  • 更多中等难度的 Geeksforgeeks 问题

第四轮(面试):

  • 断字问题
  • D 天内发货能力
  • 文本对齐(Leetcode)
  • 一些更标准的问题(困难)

CS Fundamentals(OS、DBMS、OOPS)等方面也有一些困惑和问题。

最后,我被选中担任该职位。