成都华为OD测试岗面试记录(已offer)
4.23 帖子被牛客系统删了
4.24申诉找回了部分帖子
我慢慢补齐全文
——————————————————————
更新记录
2023.04.23,更新内容被牛客审核系统狙击了,原帖子被删除了,因为内容中有竞品刷题平台的链接(力某抠);
2023.04.24,邮件申诉找回部分帖子;
2023.04.24,新增整个笔试、面试时间线;
2023.04.25,新增光产品线B部门主管面、薪资面、offer;
2023.04.30,机试部分关于C*DN的部分又被和谐了,新增回忆版题目内容以及对应的题解代码,通过率分别为100,93.33,100;
——————————————————————
时间线
2023.02.20,周一,上机考试
2023.02.22,周三,综合测试
云计算A部门:
2023.02.27,周一,技术一面
2023.02.28,周二,技术二面
2023.03.01,周三,主管面
2023.03.03,周五,HR薪资面
光产品线A部门:
2023.03.06,周一,资格面
光产品线B部门:
2023.03.07,周二,资格面
2023.03.08,周三,主管面
2023.03.09,周四,口头offer
2023.03.15,周三,邮件offer
——————————————————————
背景:21年末流211本科毕业,专业非科班,家在成都,毕业后在青岛做售前一年,然后22年因为个人规划辞职回成都,准备在成都发展,个人自学Python基础,算法,牛客和某扣刷题。
——————————————————————
机试
代码会查重,UU们要注意,393分通过,运气不错,我的三道题,(1)打印机打印文件;(2)链表中间节点;(3)最优资源分配。
——————————————————————
1.打印文件(100分)
题目描述:
有5台打印机打印文件,每台打印机有自己的待打印队列。打印的文件内容有优先级,有1-10不同的优先级,其中数字越大,优先级越高。打印机会从自己的队列中选择优先级最高的文件来打印。如果队列中存在相同优先级的文件,那么选择最先进入队列的文件进行打印。
输入描述:
每个输入一个测试用例,一个测试用例第1行给出事件个数N(0<N<1000)。接下来N行,分别表示发生的事件。共有两种事件:1."IN P NUM",表示一个拥有优先级NUM的文件放到打印机P的待打队列。0<p<5,0<num<=10。2."OUT P",表示打印机P进行一次文件打印,同时该文件出列。
输出描述:
每次"OUT P"事件,输出文件的编号,如果队列为空,输出"NULL"。文件编号定义:"IN P NUM"事件发生第X次,此处待打文件编号为X,编号从1开始。
示例:
输入:
7
IN 1 1
IN 1 2
IN 1 3
IN 2 1
OUT 1
OUT 2
OUT 2
输出:
3
4
NULL
——————————————————————
2.寻找链表中间节点(100分)
题目描述:
给定一个链表L,编写程序输出链表中间节点保存的数据,如果有两个节点,那么输出后一个节点的数据。例如,L为1→7→5,输出7;L为1→2→3→4,输出3。
输入描述:
第一行给出首节点地址以及链表节点个数。节点地址是5位非负整数,NULL地址用-1表示,接下来N行,每行格式:地址、数据、 next。
输出描述:
输出目标节点保存的数据
示例
输入:
00100 4
00000 4 -1
00100 1 12309
33218 3 00000
12309 2 33218
输出:
3
——————————————————————
3.最优资源分配(200分)
题目描述:
某种芯片的最小容量单位为1.25G,总容量为M×1.25G,对该芯片的资源编号为1,2,。。。,M。芯片支持3种不同的配置,分别为A,B,C。
A:占用容量1.25g×1
B:占用1.25×2
C:占用1.25×8
一个硬件板上集成N个芯片,芯片编号为1,2,3,。。。。,N。各芯片相互独立,不能跨芯片占用资源。给定板卡芯片数量N,每块芯片的容量为M,按照用户配置后输出芯片资源占用情况,保证消耗的芯片数量最少。
资源分配规则:按照芯片编号从小到大进行资源分配,芯片资源被占用则标记为1,未占用标记为0.
用户配置序列:用户配置按照顺序来进行配置,如果某个配置超过了芯片的容量,则丢弃该配置,继续遍历后续的配置。
输入描述
M:每块芯片容量M×1.25G
N:芯片数量,1-32
用户配置:例如ACABA,长度不超过1000
输出描述
每块芯片的占用情况
示例
输入
8
2
ACABA
输出
11111000
11111111
说明
第一个配置A:占用第一块芯片的第一个资源,占用情况为
10000000
00000000
第二个配置C:第一块芯片的剩余容量(8.75)不够配置C,所以用第二个芯片来配置C,占用情况为
10000000
11111111
……(省略)
第五个配置A:第一块芯片所剩的容量仍然够配置A,占用该芯片的第五个资源,占用情况
11111000
11111111
——————————————————————
综合测试(性格测试)
没什么技巧,选积极向上、吃苦耐劳,愿意加班、愿意团队合作等选项,有些题会重复出现,尽量保证选择一致。
技术1面(30分钟左右)
(1)聊聊我的机试题,给面试官讲了下思路和用到的算法;
(2)手撕题,题目:最大子序列求和,参考某扣53. 最大子数组和,但是这个面试题在这道题的基础上加了一个要求,输出最大和的同时还需要输出子序列的第一个元素和最后一个元素。这道题我先用了动态规划去做,无奈学习不到位,没做出来,最后暴力求解解决。
(3)问了我怎么学的Python,学了多久,学了哪些算法
(4)因为我是转行,简历上的项目不是技术项目,面试官不感兴趣,然后看我简历上写我会JavaScript,然后就问JavaScript的一些问题,我也跟面试官讲了下在大学期间做的前端项目,遇到哪些问题,怎么解决的,最后结果怎么样
技术2面(30分钟左右)
面试官是个小姐姐,人很好
(1)问了我简历上的非技术项目,问得很详细,一定要对自己的项目很熟悉;
(2)Python基础知识:1,元组和列表的相同点和不同点;2,is和==有什么区别;3,__new__和__init__有什么不同点;4,Python除了全局作用域和局部作用域,还有哪些作用域;5,说说浅拷贝和深拷贝;
(3)手撕,某扣695. 岛屿的最大面积,没做出来,面试官看我做半天没进展就给我换了个简单题,换题: 35. 搜索插入位置,这个简单,一气呵成;
(4)看我在手撕题里面用了sorted函数排序,问我这个函数的底层原理;
主管面(40分钟左右)
(1)自我介绍
(2)为什么离职回成都
(3)个人爱好,有没有对象
(4)在过去一年工作中,有哪些提升,有哪些收获,举例说明
(5)大学期间有没有参与过什么部门,有没有策划过什么活动,怎么策划的(这块我回答的不好,有卡壳,毕竟都是三、四年前的内容了,实在记不得了,也没提前梳理)
(6)反问,介绍成都华为云下的主要产品线,同时我要去的这个部门主要业务是什么;
HR薪资面(10分钟左右)
薪资没谈拢,低于预期太多了,反复拉扯,反复battle,最后让我考虑下,让我考虑好了再跟他们说,然后HR就直接挂电话了,感觉HR情绪出问题了,最后打听薪资没有聊的可能性了,然后就拒了
——————————————————————
第二个部门
前面提到了我拒了offer,然后德科的HR给我推了另一个部门,是做与5G无线传输、芯片设计和分析相关的部门
HR资格面(大约40分钟)
(1)自我介绍;
(2)职业规划,这部分我说的很简单,HR一眼识破我没有做深层次的思考,然后就引导式的让我进一步的说明;
(3)为什么想学Python
(4)问了我简历上的项目,什么项目,具体负责了、做了哪些东西,怎么做的,结果怎么样,最后问我这个项目有没有我觉得是瑕疵的地方(一定要熟悉项目)
(5)为什么没有去上个部门,陈述了薪资没有谈拢
(6)问我上家公司的待遇,薪资、年终奖金情况
(7)问我个人情况,是否独生子女,是否有对象
(8)怎么看待加班
(9)进来后主要工作语言要用C++,Python为辅,是否介意
(10)反问,介绍产品线和部门业务
HR最后补充:希望可以从工作开发语言和职业规划角度考虑下,能否接受这个岗位的工作内容(因为在之前职业规划里面,我是以Python为主,这个岗位的话要求以C++为主)
结果:没去,虽然业务是好业务,但是确实不适合我
第三个部门
HR资格面(16分钟左右)
今天又托了德科HR又推荐了一个部门,主要做Python测试
虽然面试官迟到了一会,但是不碍事,整个过程很放松,面试过程就是闲聊,主要是HR在分享
(1)HR介绍部门情况以及业务
(2)HR提出Python测试要求:责任心
(3)我问了下部门开发工程师主要用的什么语言,C语言
(4)我问了下,部门内测试和开发可不可以转,可以转(我做测试的同时想学习其他语言的想法得到HR认可)
(5)我问了下部门od转正式的名额,不一定
补充:HR表示会给我push面试流程,预约接下来的主管面
主管面(40分钟左右)
(1)问项目经历,同样问的很细,而且很专业,因为我的角色在项目里类似PM,刚好跟主管对上了(入职后,我看主管的评级是高级项目管理),问的有些东西我都不知道,也没做过,不过我还是主动承认自己的不足,同时也讲了讲对于那些做的不好的地方应该怎么改进。然后还问了两个关于测试角色的问题,1)你的项目经历都是处于需求前端,现在如果你现在是一名测试,负责需求的后端,那你怎么保证测试的结果是产品想要的?我就围绕看测试用例,请教同事,与产品直接沟通来讲;2)还有个问题忘记了;
(2)问了兴趣爱好,个人情况;
(3)问了职业规划;
(4)看我简历上写我当过班长,提问:现在有一条通知需要传达给同学们,怎么保证让所有同学都能知道(线上+线下,线上群公告,艾特全体成员,线下发动班委,宿舍串门传达);怎么保证一项班级活动全班参与;
(5)说说我对华为的印象,我说辛苦的,高成就的,……,主管调侃说,怎么在你印象中辛苦是第一位;
(6)说说我印象中的华为加班,我说一般加班到晚上10-11点,主管说,夸张了,不过也差不多,主管又说,既然你知道要加班,还来投简历,那应该是做好加班的准备了吧;笑死我,当时主管的语气还挺逗
(7)问,入职后可能会学习C++,能学会吗,我就说我学习能力强啥的,很有信心;
(8)反问,新人培养计划
入职后,我那主管人的确挺好的,还挺有趣,哈哈
HR薪资面(5分钟)
薪资没问题,是我的预期。然后HR问了一些个人信息,和上家公司的薪资情况等,HR录入资料。然后就说offer审批需要四个工作日。
收到offer
四个工作日后,3.15号下午六点半收到offer邮件。
—————————————————————
最后,预祝大家offer满满
⭐⭐⭐链表题解的代码里面第10行中range (2)应该改成range (n)⭐⭐⭐