灵犀互娱服务器 0817笔试
20选择+5道编程
1. 求数组最大子串,使得最大值和最小值之差不大于1
哈希表,100%
2. 勇者的馈赠
给两个数组,一个勇者数组,表示勇者通关需要的最少药量,一个药瓶数组,表示现存药量,输出最多能有几个勇者通关
例:[10, 15] [8, 10, 15] 输出2
优先队列 100%
3. 物品拍卖
物品初始值为0, 输入一系列命令行, 求物品最终值
共3种命令 add 增加 sub 减少 undo 撤销上一步
例:
add 1000
sub 100
undo
add 1000
输出2000
栈 100%
4. 求数组能组成的合法三角形的最大周长
例:3 2 3 4 输出10
用了回溯,比较暴力,60%
5. 给定一个矩阵matrix,matrix[i][j]代表矩阵单元格的高度,给定兔子和水的位置,水会淹没小于等于自身高度的相邻单元格。兔子先走,每次都能跳到高度低于h的相邻单元格(其中h=自身单元格高度+兔子的起跳高度),求兔子不被水淹的最小起跳高度
例:
矩阵:
6 5 4
1 2 3
兔子位置:2 1
水的位置:1 3
输出:3
思路:先求出不会被水淹到的所有位置存入数组,穷举位置,求兔子到每个位置的最小高度,输出所有最短路径的最小值
不知道怎么求兔子到每个位置的最小高度,想过dp但是没时间写完了
蹭了10%
1. 求数组最大子串,使得最大值和最小值之差不大于1
哈希表,100%
2. 勇者的馈赠
给两个数组,一个勇者数组,表示勇者通关需要的最少药量,一个药瓶数组,表示现存药量,输出最多能有几个勇者通关
例:[10, 15] [8, 10, 15] 输出2
优先队列 100%
3. 物品拍卖
物品初始值为0, 输入一系列命令行, 求物品最终值
共3种命令 add 增加 sub 减少 undo 撤销上一步
例:
add 1000
sub 100
undo
add 1000
输出2000
栈 100%
4. 求数组能组成的合法三角形的最大周长
例:3 2 3 4 输出10
用了回溯,比较暴力,60%
5. 给定一个矩阵matrix,matrix[i][j]代表矩阵单元格的高度,给定兔子和水的位置,水会淹没小于等于自身高度的相邻单元格。兔子先走,每次都能跳到高度低于h的相邻单元格(其中h=自身单元格高度+兔子的起跳高度),求兔子不被水淹的最小起跳高度
例:
矩阵:
6 5 4
1 2 3
兔子位置:2 1
水的位置:1 3
输出:3
思路:先求出不会被水淹到的所有位置存入数组,穷举位置,求兔子到每个位置的最小高度,输出所有最短路径的最小值
不知道怎么求兔子到每个位置的最小高度,想过dp但是没时间写完了
蹭了10%
全部评论
相关推荐