华为OD笔试

1.整数数组nums,整数k。输出将数组A中小于k的整数组合到一起的最小交换次数。组合在一起是指满足条件的数字相邻,不要求相邻后在数组中的位置。(100分)
样例1:
nums=[1,3,1,4,0], k=2
输出:1 ,解析:交换第一个1和4
样例2:
nums=[0,0,0,1,0], k=2
输出:0,解析:已经满足条件
样例3:
nums=[2,3,2], k=1
输出:0,解析:不存在小于k的数,无需交换

2.将格式为 {1~128} #{0~255}#{0~255}#{0~255}的ipv4地址(即#分割的4节的ipv4形式)转换为对应的32位整数,输入形式为字符串,存在空串、含ip中不存在的字符、非合法的#分十进制数、十进制数不在合法区间 的4种非法输入,此时输出“invalid ip"(100分)
样例1: 100 #101#1#5
输出: 1694340997
样例2: 1#2#3
输出: invalid ip

3. 模拟九宫格输入法,默认为数字模式,按‘ #’键可在数字模式和字符模式之间切换,字符模式时长按数字键可在候选字符中循环,按‘/’键延迟(相当于手指抬起,不再循环候选的字符)。输入为字符串,输出该输入法输入得到的文本。(200分)
九宫格键盘布局为
[ 1,.?! ] [ 2ABC ] [ 3DEF ]
[ 4GHI ] [ 5JKL ] [ 6MNO ]
[ 7PQRS ] [ 8TUV ] [ 9WXYZ ]
[ 0 空格 ]
样例1: 2#22/222
输出: 2BC

思路:(参考链接均非本人所写)
1.固定长度的滑动窗口,记录窗口内的大于k的数字数量count,窗口滑动时count即为需要交换的次数,可参考 https://blog.csdn.net/qq_32424059/article/details/99544441
3.简单模拟题,可参考 https://www.bilibili.com/s/video/BV11C4y1h7sV
#华为OD招聘##笔经##华为#
全部评论
第一题 nums = list(map(int,input().split())) k = int(input()) num = 0 for i in nums:     if i < k:         num += 1 res = num for i in range(len(nums) - num + 1):     window = nums[i:i + num]     win = 0     for j in window:         if j < k:             win += 1     res = min(res, num - win) print(res)
1 回复 分享
发布于 2022-03-30 11:23
需要华为机试题库私聊
2 回复 分享
发布于 2022-05-08 21:38
第二题没看懂,啥叫对应的32位整数?转化成2进制以后拼起来再转回10进制?
点赞 回复 分享
发布于 2022-03-31 11:25
第一题样例1没看懂,不应该交换3和0吗?或者交换第一个1和4
点赞 回复 分享
发布于 2022-03-31 00:26
[ 1,.?! ] [ 2ABC ] [ 3DEF ] [ 4GHI ] [ 5JKL ] [ 6MNO ] [ 7PQRS ] [ 8TUV ] [ 9WXYZ ] [ 0 空格 ] 样例1: 2#22/222 输出: 2ABC 疑问:这个不应该是输出2BC吗? 这个A是哪里来的呀???谢谢
点赞 回复 分享
发布于 2022-03-22 22:29
华为OD怎么样?和正式员工有啥区别
点赞 回复 分享
发布于 2022-03-22 10:23

相关推荐

不愿透露姓名的神秘牛友
2025-12-17 16:48
今天九点半到公司,我跟往常一样先扫了眼电脑,屁活儿没有。寻思着没事干,就去蹲了个厕所,回来摸出手机刷了会儿。结果老板刚好路过,拍了我一下说上班别玩手机,我吓得赶紧揣兜里。也就过了四十分钟吧,我的直属领导把我叫到小隔间,上来就给我一句:“你玩手机这事儿把老板惹毛了,说白了,你可以重新找工作了,等下&nbsp;HR&nbsp;会来跟你谈。”&nbsp;我当时脑子直接宕机,一句话都没憋出来。后面&nbsp;HR&nbsp;找我谈话,直属领导也在旁边。HR&nbsp;说我这毛病不是一次两次了,属于屡教不改,不光上班玩手机,还用公司电脑看论文、弄学校的事儿。我当时人都傻了,上班摸鱼是不对,可我都是闲得发慌的时候才摸啊!而且玩手机这事儿,从来没人跟我说过后果这么严重,更没人告诉我在公司学个习也算犯错!连一次口头提醒都没有,哪儿来的屡教不改啊?更让我膈应的是,昨天部门刚开了会,说四个实习生里留一个转正,让大家好好表现。结果今天我就因为玩手机被开了。但搞笑的是,开会前直属领导就把我叫去小会议室,明明白白告诉我:“转正这事儿你就别想了,你的学历达不到我们部门要求,当初招你进来也没打算给你这个机会。”合着我没入贵厂的眼是吧?可我都已经被排除在转正名单外了,摸个鱼至于直接把我开了吗?真的太离谱了!
rush$0522:转正名单没进,大概率本来就没打算留你
摸鱼被leader发现了...
点赞 评论 收藏
分享
评论
8
74
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务