程序员笔试之猿辅导招聘2021 编程题收集整理(八)

1.小猿给定了一颗完全二叉树,树中结点都是正整数,请问该完全二叉树的边界结点从根结点开始以逆时针的顺序排序后形成的序列是什么?边界结点定义为每层最左边的结点,叶子结点和每层最右边的结点。(用一个结点只能计入一次)
输入描述:
第一行输入一个正整数N,表示为完全二叉树的结点个数(1<=N<= 1 0 6 10^6 106).
第二行输入N个正整数,表示为该完全二叉树的层序遍历序列
输出描述:
输出完全二叉树的边界结点从根节点开始以逆时针的顺序排序后形成的序列,以空格分隔
示例:
输入:
5
1 2 3 4 5
输出:
1 2 4 5 3

2.小猿发现了一根侧面写着数字的圆柱,仔细观察发现柱子的侧面被分割成了N行M列的若干个小格子,每个格子里写着一个数字。你能帮助小猿找到圆柱侧面的最大子矩阵吗?
输入描述:
第一行输入两个数N M(1<=N<=100,1<=M<=1000)
接下来N行,每行输入M个数字
输出描述:
请输出圆柱体侧面的最大子矩阵和
示例:
输入:
2 3
2 1 2
3 -2 4
输出:
11

3.猿宝最近在玩一个猜数字游戏,给定一个数字n,表示答案在1到n之间,每次可以猜一个数字,猜中游戏胜利,但是如果猜错了,将要花费所猜数字的金币,并得知是猜大了还是猜小了,但是有k次机会可以免除此花费,猿宝想知道至少需要准备多少金币能确保获得游戏胜利
输入描述:
输入两个以空格分割的正整数n,k.(n<=300,k<=20)
输出描述:
输出一个正整数表示小明需要准备的金币个数。
示例1:
输入:
3 1
输出:
0

示例2:
输入:
3 0
输出:
2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值