德科OD遇到的3题面试题
1905
发布于 未知归属地

一 最少面试官数量

某公司组织一场公开招聘活动,假设由于人数和场地限制,没人每次面试的时长不等,并已经安排给定,

用(S1,E1)、(S2,E2)....(Si,Ei) Si < Ei。(Si, Ei 均为非负整数) 表示每场面试的开始和结束时间。
面试采用一对一的方式,即一名面试官同时只能面试一名应试者,一名面试官完成一次面试后可以立即进行下一场面试,且每个面试官的面试人次不超过m。
为了支撑招聘活动高效顺利进行,请你计算至少需要多少名面试官。
输入描述:
输入的第一行为面试官的最多面试人次m,第二行为当天总的面试场次n,接下来的n行为每场面试的开始和结束时间,开始和结束时间用空格间隔。
输出描述:
输出一个整数, 表示至少需要的面试官数量。
例如:
输入:
2
5
1 2
2 3
3 4
4 5
5 6
输出 3

二、TLV编码

TVL编码按[tag Length Value]格式进行编码, 一段码流中的信元用tag标识,tag在码流中唯一不重复,Length标识信元Value的长度, Value表示信元的值。
码流以某信元的tag开头, tag固定占一个字节,Length固定占两个字节,字节序为小端序。
现在给定TLV格式编码的码流,以及需要解码的信元tag, 请输出该信元的Value。
输入码流的16进制字符中,不包括小写字母,且要求输出的16进制字符串中也不要包含小写字母;码流字符串的最大长度不超过50000个字节。
输入描述:
输入的第一行为一个字符串,表示待解码信元的tag
输入的第二行为一个字符串,表示待解码的16进制码流,字节之间用空格分隔。
输出描述:
输出一个字符串,表示待解码信元以16进制表示的Value.
example:
输入
第一行 31
第二行 32 01 00 AE 90 02 00 01 02 30 03 00 AB 32 31 31 02 00 32 33 01 00 CC
输出 32 33
说明:需要解析的信元的tag是31,从码流的起始处开始匹配, tag为32的信元长度为1(0100,小端序为1);第二个信元的tag是90,其长度为2;第三个信元的tag是30,其长度为3;第四个信元的tag是31,其长度为2(02 00),所以返回长度后面的两个字节即可,即32 33.

三、最小交换次数

Snipaste_2022-06-26_21-25-08.png

评论 (0)