华为春招机试2021(第二题:挑选货物)

1.前言

2021年春招,参加的3.10机试,三道题600分A了540分,第二道对了70%,其它全对。
第二题主要是没有优化算法,复杂度为O(n^2),结果超时了,睡了一觉之后,才理清思路,然后这篇文章也是主要讲下第二题思路。

2.题目

自己没有截屏,用的牛客网中的题目。水印也是别人的,没办法。

(1)图片版

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(2)文字版

感觉看图片过于眼疼,碰巧在牛客网找到有人发了文字版的,就顺手牵羊了。

1.小明抽到字符串,小红抽到一个更长的,小红有限次的替换一个字母为另一个,比如最大替换次数为2
请判断小红每次游戏时候能不能成功替换字母从而包含小明的字符串,可以请输出最小替换次数,不可以或者不需要替换输出0;
输入三行:第一行小明的字符串
第二行小红的字符串(长一些)
第三行是最大允许替换次数

2.一排包装箱从1编号,各个包装箱存放的货物数组成一个集合M={M1,M2,…,Mn}
货车一次最多运送K件货物
小王想一次从中挑选K的整数倍件货物,再分批运输。
仓库管理员为了方便要求小王必须选择连续的包装箱,比如可选择1、2、3号箱,不能选2、4、6
如果运输K整数倍件货物,请帮小王计算有多少种挑选方式
输入:
包装箱数N,货车最大一次运送的数量为K件
各个箱子存放的货物M1,M2,M3。。。
输入为两行:N K
M1 M2 M3。。。
N和K取值范围为[1,100000]
第i个包装箱存放货物的取值范围也是[1,100000]
输出:一行输出有多少种方式,如果不存在可行的方式,输出0

3.N个广播站,站点之间有些有连接,有些没有。有连接的站点在接受到广播后会互相发送。给定一个N*N的二维数组matrix,
数组的元素都是字符’0’或者’1’。matrix[i][j]=‘1’,则代表i和j站点之间有连接,matrix[i][j] = '0’代表没连接,
现在要发一条广播,问初始最少给几个广播站发送,才能保证所有的广播站都收到消息
输入:一行数据代表二维数组的各行,用逗号分隔。保证每个字符串所含的字符数一样
比如:110,110,001
输出:返回初始最少需要发送广播站个数

3.解析

(1)字母替换

暴力法OC,这道题在leetcode貌似有类似的。第一次没考虑超过允许替换字符串的限制,只通过90%,后面加了个判断就行。

评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

此人受打击,决定去力扣历练

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值