在线评估:
- 给定一个以 1 为根、有 n 个节点的树,给出 q 个查询。在每个查询中,d、e 作为输入给出。您需要找到 e^x 的最大值,其中 x 是树中 d 或 d 本身的祖先之一。
n<=10^5 q<=3*10^5 e<=3*10^5 1<=d<=n
- 一辆巴士停在 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。
- 您将在代表电晕橙色区域的 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 天后变成红色区域。
面试第一轮:我被要求自我介绍。简单介绍后,直接给了我一个问题。问题如下:
- 给定 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 轮:有一个简短的介绍。然后面试官直接跳进了一个问题。
- 给定一个二维整数数组,维度为 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)。