猿辅导2021校园招聘技术类笔试(一)

时长:90分钟 总分:18分

121浏览 0人已完成答题

题型介绍
题型 单选题 填空题
数量 15 3
1.
小猿的时间管理
问题详情

小猿非常热爱学习,所以他在猿辅导上购买了N节课来提升自己,每节课有一个开始时间S和结束时间E(S和E均用正整数表示)。买完课程后,粗心的小猿发现这些课程之间有些时间冲突,幸好小猿有一种“一心多用”的超能力,能同时兼顾K节课上课。当然是K越大,使用这种能力就越累。请问小猿最少需要一心几用,才能上完所有他买的课程呢? 输入描述:
第一行输入为N(N ≤ 200000),表示购买课程数。
接下来N行,每行输入两个数Si Ei(0 < Si < Ei < 1e9),为第i节课的起止时间。
输入样例: 4 1 4 1 2 2 3 3 4 输出描述: 请输出最小满足条件的K。输出样例 2
2.
小猿的抽奖
问题详情

猿辅导组织一次抽奖活动,奖券的发放方式是:某个同学拿到全部的奖券,然后自己留一张,其他的分发给他周边的同学;其他同学收到奖券后,自己留一张,再分发给周边还未收到过奖券的其他同学,以此类推,直到每个同学都收到一张奖券为止。
开奖时,每张奖券会得到一个奖励值,每个同学最终奖励值除了要包含自己奖券的奖励值外,还可以额外加上从经由自己发出去的奖券中选择出一部分奖券的奖励值。但是如果不选择某张奖券,那么经由持有这张没被选择奖券的同学发出去的所有奖券都不能再选了。比如A把BCD的奖券发给了B,B再把CD的奖券分发给了CD,A可以只选择自己的奖券,可以选择ABCD的奖券,也可以选择AB或ABC或ABD的奖券,但是不能只选择AC或者AD的奖券。
奖励值当然是越大越好,大家一定也想知道最终大奖是多少,请你帮大家算一下吧。
输入描述:
第一行输入N,表示N个同学,N <= 100000;
第二行到第N+1行输入两个整数A B,其中A表示某同学持有奖券的奖励值,-1e9 <= A <= 1e9,B表示该奖券是第B行的同学发给他的;
B=0表示他是第一个发奖券的同学。
输入样例: 3 2 0 1 2 -1 2 输出描述: 输出整数M,为所有同学中获得的最大的奖励值除1000000003的模。输出样例 3
3.
小猿的编程课
问题详情

小猿参加了猿辅导的编程培训课程,课后老师给大家留了作业,要求写一个简化版的模版解析器。需要具备的功能是:给一个模版字符串注入数据,输出模版解析后的字符串,保证了模版中的变量一定存在于注入的对象数据中。

注入的数据是一个对象,表现形式是{key1: value2,key2: value2, key3: value3}, key是一个字符串,value可以是对象、布尔值、字符串和包含相同元素的数组,【key:value】对数为正整数。

模版字符串由一系列标签元素和普通元素组成,标签元素的形态是:<标签名字 aaa=“vvv” bbb="ttt" ccc="ppp">xxxxx</标签名字>,其中标签名字是一个由小写字母组成的长度大于等于1的字符串,比如示例模版中的div、button、ul、li等,并且成对出现,比如<div>和</div>、<button>和</button>。标签元素上有0个或多个属性,诸如aaa、bbb、ccc,每个属性都有一个取值, 属性可以是下述解析规则1和2。xxxxx是该标签元素的内容,可以是标签元素、也可以是普通元素。普通元素是一个常量或下述解析规则的动态值,常量是字符串、数字、空格、换行符和可视化的符号。


解析规则如下:

1.解析指令 【y-if="{{xxx}}"】,根据双大括号中变量值判断当前标签元素是否存在,取值范围如下:
   -- true,类型boolean,保留标签元素及其子元素;
   -- false,类型boolean,移除标签元素及其子元素;
   -- undefined,表达式xxx对应的变量不存在,移除标签元素及其子元素;
2.解析指令 【y-for="xxx, yyy in zzz"】,对当前标签元素做for循环输出,每个输出元素用换行符‘\n’分隔。指令的值域格式,如示例中的 lesson, index in list, 其中,变量list是一个数组,可以在注入的数据中找到,数组中的每个元素类型一致。变量index表示数组的索引,变量lesson表示这个数组中对应索引index的元素,二者顺序固定。数组索引和元素的变量名(index和lesson)可以是一个任意的由小写字母组成的长度大于等于1的字符串
注:y-for和y-if不会同时出现在一个标签中。
3.注入动态值 {{xxx.yyy}},双括号表示获取注入数据中的变量值,xxx.yyy是注入数据data的xxx属性对应的对象的yyy属性的值,该变量值是一个string,比如示例中的{{lesson.teacher}},输出lesson对象的teacher属性的值。如果注入的变量值不存在,则输出空字符串。
4.删除注释所在的一行,注释以<!--开头、以-->结尾,独占一行,如示例中的<!-- 卡片区域 -->。
5.除了注释以外,标签元素、解析指令y-if、解析指令y-for 都存在嵌套的情况。
输入描述:
输入分为两部分,用2个空行分开
第一部分共N行,是一个对象Object,包含模版字符串中需要的所有数据,数据类型有string、boolean、array、object;
第二部分共M+1行,前M行是一个模版字符串,至少包含上述的一条规则M > 1 ,最后一行是字符串“end”,表示输入结束。
输入样例: { "isMain": false, "list": [] }
  • {{lesson.label.type}} {{lesson.title}}
    班课-老师:{{lesson.teacher}}
    {{lesson.time}}
end 输出描述: 对于每组测试数据,输出解析后的字符串输出样例
4.
给定初始序列1、2、3、4、5、6,对空栈进行入栈、出栈操作,以下哪种序列...
问题详情

给定初始序列1、2、3、4、5、6,对空栈进行入栈、出栈操作,以下哪种序列不能得到




5.
用递归算法实现n个不同元素的有序序列的二分查找,递归工作栈的最小容量应为:
问题详情




6.
DNS服务器解析域名的正确查询顺序为:
问题详情




7.
在以下各种寻址方式中,获取操作数最快的是:
问题详情




8.
有一苹果两个人抛硬币来决定谁吃这个苹果,先抛到正面者吃。问先抛者吃到苹果的...
问题详情

有一苹果两个人抛硬币来决定谁吃这个苹果,先抛到正面者吃。问先抛者吃到苹果的概率是多少?




9.
有一长度为3000B的IP数据报,IP头部长度为20B,如果在最大帧长为1...
问题详情

有一长度为3000B的IP数据报,IP头部长度为20B,如果在最大帧长为1518B的以太网传输,需要将其拆分为()个数据报




10.
若二叉树的先序和后序序列正好相反,则该二叉树一定:
问题详情




11.
以下哪些协议是属于同一层的协议?
问题详情




12.
小猿开展暑期课程,如下哪些sql语句能查询出参加了暑期课(表A)但是没有参...
问题详情

小猿开展暑期课程,如下哪些sql语句能查询出参加了暑期课(表A)但是没有参加夏令营(表B)的学生呢?
表A:
id
10001
10003
...

表B:
id
10002
10003
...





13.
假如有两个线程,都需要申请锁m1、m2,并且都执行以下操作时,请问哪种操作...
问题详情

假如有两个线程,都需要申请锁m1、m2,并且都执行以下操作时,请问哪种操作可能带来死锁?




14.
用某种排序方法对序列(25、84、21、47、15、27、68、35、20...
问题详情

 用某种排序方法对序列(25、84、21、47、15、27、68、35、20)从小到大进行排序时,序列的某几次变化情况如下:
20、15、21、25、47、27、68、35、84
15、20、21、25、35、27、47、68、84
15、20、21、25、27、35、47、68、84
注:变化是有序的
则采用的排序方法是




15.
在http1.1的各种请求操作中,不具有操作幂等性的是:
问题详情




16.
以下C代码在32位计算机上运行结果为:#include&ltstdio....
问题详情

以下C代码在32位计算机上运行结果为:
#include <stdio.h>
int fun1(int i) {
 return i < 10 ? i
    : (5 * fun1(i-1) + 2 * fun1(i-2) + fun1(i-3) + fun1(i-4)) & 0x5fff
}

int fun2(unsigned int i) {
 unsigned int f = 2020
 return (f & i) / 2
}

int main(int argc, const char* argv[]) {
  printf("%d\n", fun2(fun1(101)) % 4)
  return 0
}




17.
不考虑推理中所涉及名词的常识性知识,仅根据推理内容判断,以下逻辑推理中正确的是:
问题详情




18.
有40个人随机的排队去买票,每张票5圆,每人买一张。其中30人每人带了一张...
问题详情

有40个人随机的排队去买票,每张票5圆,每人买一张。其中30人每人带了一张5圆纸币,10人每人带了一张10圆纸币,假设售票处一开始没有零钱,问所有人都不需要等待找零就能完成购票的概率最接近以下哪个值?