📜  2021年Media.net采访体验

📅  最后修改于: 2021-11-24 03:11:35             🧑  作者: Mango

在线评估:

  1. 给定一个以 1 为根、有 n 个节点的树,给出 q 个查询。在每个查询中,d、e 作为输入给出。您需要找到 e^x 的最大值,其中 x 是树中 d 或 d 本身的祖先之一。
    n<=10^5
    q<=3*10^5
    e<=3*10^5
    1<=d<=n
  2. 一辆巴士停在 n 个巴士站,每个巴士站有 [i] 个人。巴士需要接纳巴士上的所有人。来自 1 个巴士站的人在下一个巴士站到达之前下车。他们使用调整大小技术,允许将总线调整为他们想要的任何容量。这个动作最多只能做 b 次。公交车的无用性是 n 站空座总数的总和。如果最佳地使用调整大小技术,请找出总线可以实现的最小无用性。 1<=a[i]<=10^6, 1<=b<=n<=400
    Ex 1:
    a = [10 20] b = 0
    Ans:10

    说明 – 无法应用调整大小技术。因此,总线的容量最初是 20。第一站有20-10个座位没有使用。在第二站有 20 – 20 个座位未使用。未使用的座位总数 = 10

    Ex 2:
    a = [10 20 30] b = 1
    Ans: 10

    说明 – 调整大小技术只能应用一次。总线的容量最初是10。在第一站 10-10 个未使用的座位 = 0。在第二站,技术被用来调整到 30。30-20 个未使用的座位。

    第三站,30-30个座位未使用

    未使用的座位总数 = 10。

  3. 您将在代表电晕橙色区域的 2D 平面中获得 n 个点。在第 i 天,Corona 将传播到距离每个 Corona 橙色区域在 i 欧几里德距离内的所有位置。如果区域与至少“x”个橙色区域重合,则该区域将变为红色。给定 n 对和 x,找出第一个红色区域出现的日期。
    1<=n<=100, 1<=b<=n, 
    for each point, 
    1<=x<=10^9, 1<=y<=10^9
    Example-
    (9,4),(10,3) , x=2.
    Ans : 1

    在点 (9,3) 中,这两个区域在第 1 天后都会受到影响。因此,它会在第 1 天后变成红色区域。

面试第一轮:我被要求自我介绍。简单介绍后,直接给了我一个问题。问题如下:

  1. 给定 4 个字符串w,x,y,z。您可以随意排列每个字符串。您必须为 4 个字符串的每一个修复 1 个排列,这样当您将所有 4 个字符串添加到一个 trie 中时,trie 中创建的节点数最小化。
    Example-
    w = abaa
    x = aaaa
    y = acca
    z = abca
    For permutaion:
    w = abaa
    x = aaaa
    y = acca
    z = abca

    Trie 中的节点数 – 1(所有字符串的第一个字符的新节点数)+ 3(第二个字符)+ 4(第三个字符)+ 4(第四个字符)= 12

    最小尝试节点数在以下情况下:

    w = aaab
    x = aaaa
    y = aacc
    z = aacd
    Number of nodes : 
    1 + 1 + 2 + 4 = 8

    我使用位掩码给出了 O(2^ (字数(在本例中为 4))*字符数(在本例中为 26))。面试官深信不疑。

面试第 2 轮:有一个简短的介绍。然后面试官直接跳进了一个问题。

  1. 给定一个二维整数数组,维度为 n X m,值为 ‘k’。查找是否存在总和等于 k 的方阵子矩阵。
    Example-
    n = 3, m = 3, k = 10
    1 2 3
    2 3 4
    3 2 6
    Output: true

    说明:从 (1,0) 到 (2,1)(基于零的索引)的平方的总和 2 + 3 + 2 + 3 = 10 等于 k。

    我首先使用 DP 给出了 O(m*n*min(m,n)) 解决方案,并使用二进制搜索对其进行了优化 O(m*n*log(min(n,m))) 。但是预期的解决方案是使用 2 个指针的 O(m*n)。