5.30 字节夏令营笔试题目
5.30 字节夏令营笔试题目
A. 题目描述
给定一个定长的字符串,其中包含若干字符,求该字符串中一个连续子串,满足两个条件:
1. 子串包含该字符串中的所有不同的字符
2. 满足条件1中最短的一个(若有多个,则找从左到右第一个出现的子串)
输出用子串的起始下标与长度来表示
输入描述:
输入一个字符串(如abbbaaccb),字符串长度[1, 65535],字符集为单字节ascii码集合
输出描述:
返回最短包含全集的子串,用(起始下标,长度)二元组表示。如果结果不唯一,返回第一个找到的结果。
上述例子中,候选有两个,即abb“baac”cb与abbba“accb”,返回第一个的子串,表示为(3,4)
B. 题目描述
#笔试题目##字节跳动#
小A和小B在下象棋,经过激烈的对局,两人都只剩下了将和一匹马。此时小A提议,如果小B能计算出在小A不移动棋子且小B的马只能朝右上方移动的情况下,小B的马从原点出发能够顺利取胜的路径数(吃掉小A的将,且在移动的过程中不被小A的马攻击),那么就算小B赢的对局。聪明的你能帮小B赢得对局吗?
马行动的规则:马走日,一直一斜。即马每次行动需进行两个步骤,首先向右或向上移动一格(一直),再沿原移动方向倾斜45度的对角线跳动一次(一斜)。例如,假设马的位置为(0,0),那么马行动一次可以移动到(1,2)或(2,1)。但是,马在直线移动后不能落在一个已有棋子的位置上,否则马将无法沿对角线跳跃。即,当马的位置在(0,0),且(1,0)位置有棋子时,马不能到达(2,1),但可到达(1,2)。
输入描述:
输入四个整数,前两个数表示小A的马的坐标,后两个数表示小A的将的坐标
输出描述:
输出一个整数,表示能够取胜的路径个数
C. 题目描述
某公司想在10月24日为每个人定制一件文化衫。文化衫有D、E、F三种款式。
D[i] 表示编号为 i 的员工收到 D 款式的文化衫时的快乐值。
E[i] 表示编号为 i 的员工收到 E 款式的文化衫时的快乐值。
F[i] 表示编号为 i 的员工收到 F 款式的文化衫时的快乐值。
没有人愿意和自己的直系领导撞衫。
求所有人收到文化衫时的快乐值总和的最大值。
输入描述:
共有 2N 行。
第 1 行是公司的总人数 N(2 <= N <= 5000)。
第 2 行到第 N + 1 行描述了员工的快乐值。第 i + 2 行是三个空格分隔的整数:D[i](0 <= D[i] <= 100)、E[i](0 <= E[i] <= 100)、F[i](0 <= F[i] <= 100) 表示编号为 i 的员工收到文化衫时的快乐值。最大的领导的编号为 0。
第 N + 2 行到第 2N 行描述了公司的上下级关系。每行有两个空格分隔的整数:A 和 B,表示 A 是 B 直系领导。除大领导之外,每个员工有且只有一个直系领导。
输出描述:
一个整数,快乐值总和的最大值
渣渣一个题都没答对,希望分享给大家,提供点思路。