最近,makemytrip参观了我们的校园,我被招募驱动选中。安置驱动包括4个回合。
第一轮:MCQ和编码回合
这是一个60分钟的在线测试,包括20个智能问题和3个编码问题。用于测试的平台是makemytrip,有点难以理解。
问题1:使用logn方法计算a ^ b mod c的幂,需要注意的是您不需要返回或打印答案,但必须将其存储在其预定义的全局变量中。您可以在geeksforgeeks网站上轻松找到解决方案。
问题2:给定一个句子,您应该计算出大写字母,小写字母和数字的数量。问题似乎很简单,但是选择是您需要将答案以c1:c2的形式存储在char *输出变量中: c3其中c1代表大写字母的计数c2代表小写字母的计数,c3代表数字的计数。
(提示使用sprintf以格式化方式将您的答案存储在变量中
sprintf(output,”%d:%d:%d”,c1,c2,c3);
)
问题3:活动计划问题
您将获得2个数组,分别代表活动的开始和结束时间。确定您可以实现的不冲突活动的最大数量。
(提示:构成开始和结束时间的结构,并根据结束时间间隔进行排序)
我完全解决了2部分解决了
提示:由于它们只有一个示例测试用例,因此即使您也无法解决编码问题,也只需将硬编码答案存储在该变量中。我最后做到了:P)
在110名学生中,有30名学生被选中参加个人面试。
第二轮:个人面试
自从我是清单上的最后一个候选人以来,等待时间是上午10:30,轮到我的时间是晚上10:30。面试官非常酷和友善,他开始问我自己以及我做了什么项目。关于我的项目的讨论,以及制作我在项目中使用的数据库架构。
问题1:对由0,1,2组成的链接列表进行排序。
(提示:我在C++中使用了stl的hashmap来存储0,1和2的计数)
问题2:给定股票,您需要找到可以赚到的最大利润。您可以买卖尽可能多的时间。)
问题3:用Java设计树集。
(提示:我告诉他使用BST,但他告诉我想出更优化的方法,所以Ii告诉了AVL并在AVL树中编写了用于插入的函数)
问题4:区分方法重载和方法重写。什么是Java中的静态块。
问题5:关于部署描述符,struts,mysql的钻探问题。
第三回:个人面试
面试官似乎精疲力尽。他问我,既然你是最后一个人,那么你会问的所有问题。因此,告诉我您所提出的所有问题。我告诉他字符串,LIS,LCS等不同的回文子字符串,学生告诉你在问。他想了一会儿,并告诉我编写用于图形遍历的标准bfs代码。
问题2:您已得到一个字符矩阵和一个字典,您需要找到可以从中获得的有效单词并打印出来。
(提示:我使用dfs查找有效序列,并假定所有单词都存储在哈希图中)
在这些之后,他要求在给定时间内解决6个难题。
难题1:1.5母鸡在1.5天内给1.5鸡蛋。需要多少只母鸡在6天内产四打鸡蛋。
难题2:用2条绳子燃烧1小时。计算45分钟
拼图3:10罐子,每个罐子里含10gm大理石,一个罐子只装9gm大理石,一转就能找到有缺陷的罐子。
拼图4:150人按排好的顺序排成一列。一个盲人来了
想要在队列中处于正确的位置。因此他询问任何人是否可以站在他的面前。他将回答是或否。 2年后,您必须找到正确的位置。
给出找到正确位置的策略。
(提示:这个难题可以简化为鸡蛋下降难题)
谜题5:25比赛中的马匹排名前三
难题6:一个人骑着汽车,看到一个里程碑A。1小时后,他看到了里程碑B,它的数字与A颠倒了。一个小时后,他发现了一个里程碑C,其中包含了A和B的所有数字。假设A
(我朋友问的其他问题
1,字符串的不同回文
2.交易最小化问题
3.LCS和LIS(dp方法)
4.树的直径
5,模式匹配算法(KMP)
人力资源回合:
他向我询问了我的家庭背景,从事的工作,爱好。我对makemytrip的了解。我希望在哪个位置,是否对包裹满意,工作环境等,
持续了半个小时。
提示:(要富有表现力,大声思考,要自信。他们需要知道您的方法而不是解决方案)