首页 > 2020-08-19晚19:00华为机试凉经
头像
Khalessi
编辑于 2020-08-20 11:10
+ 关注

2020-08-19晚19:00华为机试凉经

没办法,第一次写帖子就是凉经

第一题
输入一行两个数,M,N
代表一个二维矩阵的行数和列数
从左上角(0,0)的那个人开始从1,顺时针绕着矩阵外圈报数。然后内圈的情况一样
当报道的数字个位为7并且十位为奇数时,记录下这个人的位置到一个二维结果数组中,结果数组res的尺寸为N*2
注意,当M,N的范围不在闭区间[10,1000]时,返回内容为空的结果数组。
===========================
这是第一题。我死活只能通过10%的case
========================================
第二题
输入为两行
第一行:N 代表树的节点个数
第二行:N个数字,每个数字为节点的深度(你没看错,原样表述就是这样)
输出:满上上述条件的二叉树的个数,结果(%10^9+)
举例:
输入
4
1 0 2 2
输出
2

二叉树有4个节点
有一个节点的深度为1,有一个节点的深度为0,有2个节点的深度为2
可能的二叉树如下:

图片说明

第三题 俄罗斯方块

字符串frame的长度代表俄罗斯方块界面的宽度,每个字符('0'-'9')代表界面底部对应列上的格子个数
字符串brick为上部待下落的方块,每个字符的含义和限制如上
求砖块brick落在frame上时之后,整个界面还剩下的可能最小行数
保证brick都是向下突出的。
此外,形如
#k#
#
的brick不会存在
frame=="2212"代表界面 (k代表为空)

||kkkk||
||kkkk||
||## #||
||####||

brick = "121" 代表砖块
"###"
"k#k"

则输出为2

======================

总结:前几天得知笔试通知,这几天什么都没干,狂刷题复习
没想到今天就第一题通过了10%
第二题读了半天题目才知道所谓深度是所在层数-1的意思
然后题目不会做
第三题也是,测试用例比较简单,但实际例子难多了。因为都可以取值0-9.

总结:跟华为说拜拜了

自己太菜。可能还带有认为华为这次机试内容的风格我不适应导致的


=========================================
第一题输出格式参照这个链接
空数组输出“[]
非空数组只输出有效值,不输出子数组为[]的情况。
Sout(Arrays.toString(arr))
Sout(Arrays.deepToString(arr))
坚决不能用啊。。。
听说100分就能过。要是我第一题输出格式对的话。。

全部评论

(11) 回帖
加载中...
话题 回帖

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐