华为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

相关推荐

不愿透露姓名的神秘牛友
04-25 10:45
点赞 评论 收藏
分享
04-11 00:51
已编辑
门头沟学院 Java
先说一下楼主的情况:双非本大三,两段实习,javaer,想要找一个暑期大厂offer,努力了两个月,三月份每天的状态就是算法,八股,项目,四月份更是一个面试没有,最终还是没有结果,心碎了一地。期间面了一些中小厂,大厂只有腾讯约面,其他大厂都投了一遍,但是还是石沉大海。再看一下楼主的面试结果吧,就不说ttl了腾讯s3:三面挂csig:一面挂teg:三面挂wxg:一面挂没错,面了八次腾讯,两次三面挂,当时真的心都碎了。其他中小厂都有面,有的没过,有的oc,但是都没有去。其他大厂投了简历,但是不是简历挂,就是测评挂,都说今年行情好很多,各大厂都扩招,可是问题出在那里呢?学历背景吗?实习经历吗?还是简历不够好看?依稀记得,从年初七就离开了家里,回到学校,早早准备面试,当时自己认为凭借着自己的两段实习经历,以及大二就开始准备的八股算法,拿大厂offer不是问题,但是还是不敢放松,回校的状态每天就是算法,八股,还有查看各种招聘信息,想着尽早投机会多,但是事实证明,投的早,不如投的刚刚好。当时想着,先投一些中小厂开始面试,找找面试感觉,从2.10就开始有面试了,基本都是线下面试,面试的感觉都很不错,觉得自己的状态慢慢回来了,期间也有oc一些中小厂,但是自己的目标并不在此,只是想练一下手,遂拒。后面投了腾讯的暑期实习基地,不久就约面了,第一次面这么大的厂,多少有点紧张,好在运气还不错,遇到的面试官也比较好,一直干到了三面,期间看牛客有不少说一面就挂了的,感觉自己还是比较幸运的,但是没想到倒在了三面,一周后就挂了,伤心是有的,但是想到这才刚刚开始,还有很多机会,便继续准备下一次面试了,很快,被另外一个部门捞了,一进会议,面试官没开摄像头,看网上说没开摄像头很多都是kpi,但是自己给自己打气,认为面试官只是不方便开摄像头罢了,面完,感觉良好,没问什么很难得问题,基本都答出来了,算法两道也a了一道,感觉实习不会这么严格吧?还是过了一会挂了,因为这个?还是技术不太匹配?面试过程中说搞C++的,心想,搞c++的你面我干啥?唉,这时候有点气馁,然后就接下来半个月没有面试。这时已经是三月底了,看到牛客好多人都已经陆陆续续拿到了offer,看人家的面试准备也没那么早,有0实习的,有没刷算法的,有两个面的,,,唉,反正是一言难尽啊,感觉努力没有什么意义,面试多半是看面试官的感觉,主观性很大啊,只要你技术没有太大的问题。第三次面试腾讯,面试来的比较突然,期间已经有几天没看八股什么的了,临时看了一下之前自己做的面试笔记,但是面试却异常顺利,三天闯到了三面,自己也不敢相信,三面玩感觉也良好,脑子里不得不想着一些“offer结算画面”,但是过了一会查看流程显示“流程终止”,我?哎,当时真的有苦说不出啊,也是一晚没睡。后面就逐渐开始褪去大厂梦了,看着曾经跟自己交流的牛油,朋友,认识的人,觉得他们技术不太如你,算法刷的没你多,进了大厂,但是这又如何呢?能力强不强不是你了说了,面试官说了算。也逐渐知道,不是你能力好就可以了,还得有运气,运气,运气。这个过程太累了,和自己和解吧,不用非得大厂,找个合适一点的就好,放轻松一点。今天有点心事睡不着,闲着想写一些自己的面试过程,勿喷。附上一张面试的情况,公司就不方便透露了。
怒卷的斯科特:八分运气两分实力
点赞 评论 收藏
分享
评论
8
74
分享

创作者周榜

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