华为嵌入式软件实习笔试2

嵌入式软件开发笔试与面试手册https://blog.nowcoder.net/zhuanlan/jvN8gj

嵌入式软件笔试-23年真题汇总https://blog.nowcoder.net/zhuanlan/0oDWVm

点赞&&评论mark超10,附上答案

第一题找出最可疑的嫌疑人

民警侦办某商场店面盗窃案时,通过人脸识别针对嫌凝人进行编号1100000。现在民警在监控记录中发现某个嫌疑人在被窃店面出现的次数超过了所有嫌疑人总出现次数的一半,请帮助民警尽可能高效的找到该嫌疑人的编号。

输入

给定一个嫌疑人的标号数组men,其中1<length(men)<1000,嫌疑人编号满足1<=men[i]<=100000

输出

返回出现次数超过一半的嫌疑人的编号。如果总次数是偶数,例如4,则需要超过2次即最少3次,如果总次数是奇数,例如5,则需要超过2.5,满足条件最少是3次。若没有嫌凝人满足该条件,返回0

样例输入1

1,2,3,2,2

样例输出1

2

解释

第一行是嫌疑人出现记录,代表1号和3号嫌疑人出现一次,2号嫌疑人出现3次。因为2号嫌疑人出现3次,超过5次的一半,因此2号嫌疑人即为需要寻找的编号,输出2

样例输入2

1,1,2,2,3,3

样例输出2

0

解释

第一行是嫌疑人出现记录,代表1号、2号和3号嫌疑人各出现2次因为各个嫌疑人均只出现2次,未超过6次的一半,因此没有嫌疑人满足要求,输出0

第二题会议通知转发总人数

在一个办公区内,有一些正在动公的员工,当员工A收到会议通知,他会将这个会议通知转发给周围四玲邻(上下左右工位的同事)团队内的同事,周围收到该邮件的同事会继续转发给周围四邻(上下左右工位的同事团队内的同事,直到周围没有再需要往下传播的同事则会停止;同时此扩散还有前提条件,给定一可收到该邮件的团队列表relations,扩散时若该同事所在团队在relations列表中,则可进行扩散,否则不可进行扩散。办公室用一个二维数组office表示,其中office[i][j]表示该同事的团队名称,其中团队名称用整数t范围内的数字表示,ij表示该同事的工位位置。

现给定办公区的工位总行数与每一行的具体工位人员分布以及收到会议通知员工A的工位位置的坐标位置ij:还有与该邮件关联的团队编号列表relations,请分析得出最终会有多少同事收到该会议的转发通知。

注意:1、该办公区位置用二维数组表示,该二维数组以左上角的工位为起点(0,0),按照横轴向右纵轴向下的方向展开;原始收到会议通知的员工A不包含在总人数中。2、扩散时若该同事与收到初始收到邮件的员工A属于同一团队,若该团队名不在可收到通知的团队列表relations中,依然不可收到该邮件转发

输入

第一行是一个整数n,表示该办公区共有多少排,即就是office.length 第二行是一个整数m,标识该办公区共有多少列,即就是offce[i].length 接下来n行表示每一排员工的具体分布情况,每个工位上的员工所在的团队号x用空格隔开 接下来一行是两个数字用空格隔开,表示收到会议通知员工的工位位置,i表示横坐标位置,j表示纵坐标位置 最后一行是一个字符串,表示可收到该邮件的团队列表relations,团队名称之间用空格隔开 提示: 0<=i<=1000 0<=j<=1000 1<=t<=50 1<=relations.length<=50

输出

输出收到转发会议通知的总人数。

样例输入1

5 5 1 3 5 2 3 2 2 1 3 5 2 2 1 3 3 4 4 1 1 1 1 1 5 1 2 2 2 1

样例输出1

5

样例输入2

2 2 1 1 2 2 0 0 2

样例输出2

2

第三题健康餐

某减肥食堂,每一份菜都标记了卡路里。一位顾客,根据营养师的建议,每次饮食都要将卡路里控制在一定区间内(含上下限的值),请问他有多少种选择?为了简单起见,每份菜的卡路里用整数表示,且每份菜的卡路里数各不相同;同一个菜品可以打任意多份。

输入

营养师建议的卡路里下限kcal_low和上限kcal_high1<=kcal_low<=1000; 1<=kcal_high<=1000

一个标记着每个菜品的卡路里的列表menu1<=menu.length<=100; 100<=menu[i]<=1000; menu中的所有值互不相同.

输出

可行的打菜方案总数。注:根据输入的不同,打菜方案总数,可能会大于2^32,但可保证小于 2^64

样例输入1

350 500 100 200 500

样例输出1

7

样例输入2

100 400 500 550 600 650 700 750 800 850 900 950 1000

样例输出2

0

本专栏主要发布2024年嵌入式软件开发相关岗位笔试真题(嵌入式软件开发、通用软件开发、C/C++软件开发、算法工程师、测试开发等)主要是算法编程题,其中一些岗位笔试含有对应的选择题、填空题、简单题。

全部评论
mark
点赞 回复
分享
发布于 04-21 11:46 广东
感谢分享
点赞 回复
分享
发布于 04-22 19:13 广东
滴滴
校招火热招聘中
官网直投

相关推荐

5 9 评论
分享
牛客网
牛客企业服务