华为笔试9.17

第一题:找到某个数前面最靠近它的并小于等于它的数
解法:单调栈模板
结果:100%

第二题:多项式计算
解法:模拟...
结果:75%,乘法RE

第三题:如果货车载重量不小于货物,则能运载1个货物;货车还能扩容,即在货车上加装1个集装箱,能增大载重量,但最多仍然只能运载1个货物。货车/集装箱/货物数量<=5000;载重量/货物重量<=1e9;给出m个货物重量,n个货车载重量,共x个集装箱,每个集装箱能增加载重量y,问最多能载多少个货物。
解法:贪心+二分
首先升序排序货物,肯定先载轻的
将货车载重量存在set中,枚举货物重量。1.若最小载重量已可载此货物,则用最小载重量的货车;2. 二分找到大于等于货物载重量的货车car1,再二分找到大于等于货物重量-y集装箱载重量的货车car2,比较一下【car1的载重量】和【car2载重量+y】,哪个更小就用哪个,留着更大的后面用。
结果:65%,样例都没过,可能哪里打错了,但没时间修改了。
全部评论
第二题也75,不懂为撒,用double反而60,想不出哪里有问题
1 回复 分享
发布于 2023-09-27 21:55 上海
贪心应该不是正解 x 1 y 7 货物 10 14 货车载重 5 7 13 按贪心只能1个货物 但其实可以2个 数据太水啦 有没有大佬给点正解
点赞 回复 分享
发布于 2023-09-27 21:46 广东

相关推荐

03-27 17:33
门头沟学院 Java
代码飞升:同学院本,你要注意hr当天有没有回复过,早上投,还要打招呼要推销自己,不要一个劲投
点赞 评论 收藏
分享
头像
03-20 22:00
重庆大学 Java
适彼乐土:“他们不行再找你” 最后的底牌吗?有点意思
点赞 评论 收藏
分享
评论
1
7
分享

创作者周榜

更多
牛客网
牛客企业服务