直觉面试经验 |设置 13(校内)
线上回合:
有 4 个编码问题:
你有两个整数 n 和 m,其中 n 是数组的大小,m 是边的数量。下一行包含一个大小为 n 的数组,接下来的 m 行包含两个整数 x 和 y,每个整数表示 x 和 y 之间存在一条双向边。我们必须输出幸运的数组排列数。如果对于数组中的每个 Vi,在 Vi 和 Vi+1 之间都存在一条边,则称置换是幸运的。
例如输入:3 2 输出:2(1-2-3 和 3-2-1)
1 2 3
1 2
2 3
你一直是一个整数 n 和一个大小为 n 的数组作为输入。您必须打印数组中特殊数字的计数。如果一个数可以被数组中的至少一个其他元素整除,则称该数为特殊数。
文章链接:https://www.geeksforgeeks.org/divisibility-check/
例如:输入:3 输出:2(2 和 3 因为它们可以被 1 整除)
1 2 3
你得到了一个 mXn 矩阵和一个整数 k 作为输入。您必须打印当前矩阵的所有子矩阵的计数,其总和可被 k 整除。
文章链接:https://www.geeksforgeeks.org/count-sub-matrices-sum-divisible-k/
例如输入:2 2 2 输出:5 ( [1,3], [2,4], [2], [4], [1,2,3,4] )
1 2
3 4
(参考:https://discuss.codechef.com/questions/98562/given-a-2d-arraymatrix-find-number-of-sub-matrices-whose-sum-is-divisible-by-p)
你得到了一个整数 n 和一个长度为 n 的字符串。您必须为给定字符串的每个前缀找到最长的回文子字符串。
例如。输入:5 输出:1 1 3 3 5
ababa(a:1,ab:1,aba:3,abab:3,ababa:5)
(我在 O(n^3) 和 O(1) 中做到了这一点,但在许多情况下它给了我 TLE)
此后,5人入围面试。
第1轮:
说说你自己
告诉我你所有的项目以及你在其中的贡献是什么? (如果团队项目)
给定一个包含 n 个整数的数组 arr[],构造一个乘积数组 prod[](大小相同),使得 prod[i] 等于 arr[] 中除 arr[i] 之外的所有元素的乘积。
文章链接:https://www.geeksforgeeks.org/a-product-array-puzzle/
练习链接:https://practice.geeksforgeeks.org/problems/product-array-puzzle4525/1(我告诉她简单的方法,然后是另一种处理溢出的方法,然后她让我处理数组中的零)
我有一个关于 django 的项目,所以她问我它是如何实现的,所以我告诉她 MVT(模型视图模板)
然后她向我询问了 OSI 模型和 TCP/IP 模型及其各个层及其功能。
第 2 轮:
说说你自己(喜欢和不喜欢)
对项目的深入讨论
(目标受众是谁?你将如何让人们使用你的产品?为什么选择这个主题?)
给定棋盘上的任意源点和目标点,我们需要确定 Knight 是否可以移动到目标点。如果是,那么骑士移动到所述点的最小步数是多少。
如果骑士不能从源点移动到目标点,则返回-1文章链接:https://www.geeksforgeeks.org/minimum-steps-reach-target-knight/
练习链接:https://practice.geeksforgeeks.org/problems/steps-by-knight5927/1(他不想要正确的代码,只是想知道你如何解决这个问题)
给你一个矩阵。您必须将矩阵旋转 k 倍。
文章链接:https://www.geeksforgeeks.org/rotate-matrix-right-k-times/
例如 1 2 3 4 和 k=1 然后输出= 5 1 2 3
5 6 7 8 9 10 6 4
9 10 11 12 13 11 7 8
13 14 15 16 14 15 16 12
第三轮:
说说你自己。
你为什么选择计算机科学?你是如何进入这个领域的?
你什么时候开始编程的?
是什么促使你进入这个领域?
我有一个基于网络的项目,所以他问我当我们在网络浏览器中输入 URL 时会发生什么?说明过程。
然后他问我除了 DS 和算法之外我最喜欢的科目。
我说编译器,所以他问我编译器是如何工作的,所以我解释了编译器的不同阶段
然后他说,如果你有足够的钱和知识,那么你想为自己或社会建造什么东西
您曾经遇到并想要实施的任何项目想法?
除了编码之外,您还做了什么,您的兴趣是什么?
感谢 Geeks 的极客在我的准备工作中帮助我。
如果您喜欢 GeeksforGeeks 并愿意做出贡献,您还可以使用 write.geeksforgeeks.org 撰写文章或将您的文章邮寄至 review-team@geeksforgeeks.org。在 GeeksforGeeks 主页上查看您的文章并帮助其他 Geeks。