美团小哥用计算机,美团2020算法工程师编程题--外卖小哥的保温箱
题目描述:
众所周知,美团外卖的口号是:”美团外卖,送啥都快”。身着黄色工作服的骑手作为外卖业务中商家和客户的重要纽带,在工作中,以快速送餐突出业务能力;工作之余,他们会通过玩智力游戏消遣闲暇时光,以反应速度彰显智慧,每位骑手拿出装有货物的保温箱,参赛选手需在最短的时间内用最少的保温箱将货物装好。
我们把问题简单描述一下:
1 每个货物占用空间都一模一样
2 外卖小哥保温箱的最大容量是不一样的,每个保温箱由两个值描述: 保温箱的最大容量 bi ,当前已有货物个数 ai ,(ai<=bi)
3 货物转移的时候,不必一次性全部转移,每转移一件货物需要花费 1秒 的时间
测试示例:
输入描述:
第一行包含n个正整数(1<=n<=100)表示保温箱的数量
第二行有n个正整数a1,a2,…,an(1<=ai<=100)
ai表示第i个保温箱的已有货物个数
第三行有n个正整数b1,b2,…,bn(1<=bi<=100),bi表示第i个保温箱的最大容量
显然,每一个ai<=bi
输出描述:
输出为两个整数k和t, k表示能容纳所有货物的保温箱的最少个数,t表示将所有货物转移到这k个保温箱所花费的最少时间,单位为秒.
输入示例:
4
3 3 4 3
4 7 6 5
输出示例:
2 6
题目分析:
很简单的一道题,关键是将对应的a和b组成元组,随后按照b为key对这些元组进行降序排列,其中前k个b相加刚好大于sum(ai)时的就是所求的k,而后面的保温箱中的外卖都是需要转移到前面的保温箱中,因此对k+1到N个保温箱中的外卖求和便可得到所用的时间
python实现代码:
import sys
while True:
n = int(sys.stdin.readline().strip())
f = [int(x) for x in sys.stdin.readline().strip().split()]
r = [int(x) for x in sys.stdin.readline().strip().split()]
x = list(zip(f, r))
x.sort(key=lambda x: x[1], reverse=True)
print(x)
total_f = sum(f)
temp = 0
k = 0
t = 0
for i in range(n):
temp = temp + x[i][1]
k += 1
if temp >= total_f:
break # 得到最少的外卖盒箱k,但是此时的时间不一定是最少的
for i in range(k, n):
t += x[i][0]
for i in range(n, -1+k, -1): # 得到外卖份数最多的k个外卖箱,且这k个外卖箱的容量满足需求
temp_f, temp_t = 0, 0
for j in range(i - k, i):
temp_f += x[j][1]
temp_t += x[j][0]
print('temp_t', temp_t)
if temp_f >= total_f:
tt = total_f - temp_t
t = tt if t > tt else t
sys.stdout.write('%d %d'%(k, t))
~~~
美团小哥用计算机,美团2020算法工程师编程题--外卖小哥的保温箱相关推荐
- 美团点评2020校招算法工程师编程题--工作安排--动态规划
题目描述: 小美是团队的负责人,需要为团队制定工作的计划,以帮助团队产出最大的价值. 每周团队都会有两项候选的任务,其中一项为简单任务,一项为复杂任务,两项任务都能在一周内完成.第i周,团队完成简单任 ...
- 阿里巴巴2018校园招聘运筹优化算法工程师编程题
对于考试向来都是后知后觉,过后留下一堆不甘与遗憾--然而不行就是不行,再接再厉. 声明:涉及阿里校招笔试,如有侵权,请联系我删除. 一.带信号灯的最短路问题 1. 题目描述 现在城市有N个路口,每个路 ...
- 二级c语言编程题只要得出答案,计算机二级C语言考试编程题题库答案.docx
计算机二级C语言考试编程题题库答案 1.求100之内自然数中最大的能被17整除的数.void main(){ int i;for(i=100;i>0;i--)if(i%17==0)break;p ...
- 拼多多2020校招部分编程题
文章目录 拼多多2020校招部分编程题 多多的排列函数 canci 拼多多2020校招部分编程题 #include <iostream> using namespace std; int ...
- 计算机二级c语言求水仙花数和完数,预测江苏省高校计算机二级C考试上机编程题之二特殊数张柏雄.doc...
预测江苏省高校计算机二级C考试上机编程题之二特殊数张柏雄 内容 一.特殊数:素数平方是各位数不相同的数 二.495三位陷阱数 三.可分解的整数 四.闰年计算题 五.数制变换题 六.水仙花数题 七.亲密 ...
- 计算机二级c必考编程题6,计算机二级c上机编程题
计算机二级c语言上机编程题技巧分析 二级C语言上机编程题技巧 一.方法总结 1. 二级C语言上机编程题在二级上机考试中属于较难题型,因此很多同学都害怕通过不了.综合往年的考试,结合考试大纲,每年考试的 ...
- 美团小哥用计算机,美团回应大V与美团小哥争议一事:鲁莽不会让世界变好!...
[PConline资讯]6月24日消息 6月23日,一段知名博主怒斥外卖小哥视频被曝光.视频显示,疑因车辆被剐蹭,一女子对一送餐员严厉训斥. 23日晚该博主发文称,事发今年3月,当时同事正常行驶与突然 ...
- 算法工程师属于计算机哪个领域,算法工程师、数据研发工程师,数据挖掘工程师的区别是什么?...
算法工程师: 专业要求:计算机.电子.通信.数学等相关专业: 学历要求:本科及其以上的学历,大多数是硕士学历及其以上: 语言要求:英语要求是熟练,基本上能阅读国外专业书刊: 必须掌握计算机相关知识,熟 ...
- 股票交易日(动态规划)----美团2016研发工程师编程题(二)
[编程题] 股票交易日 在股市的交易日中,假设最多可进行两次买卖(即买和卖的次数均小于等于2),规则是必须一笔成交后进行另一笔(即买-卖-买-卖的顺序进行).给出一天中的股票变化序列,请写一个程序计算 ...
最新文章
- java通过代理访问网络
- 解题报告(十三)中国剩余定理(ACM / OI)
- gitlab上传文件到group_gitlab恢复备份数据
- hive表指定分区字段搜索_Spark SQL解析查询parquet格式Hive表获取分区字段和查询条件...
- [Alfred]为Baidu Weather Workflow更新图标
- es常用curl命令
- AT4378-[AGC027D]ModuloMatrix【构造】
- 20个MySQL高性能架构设计原则(收藏版)
- excel甘特图模板_最简单的Excel甘特图制作方法,只用一条公式,项目进度一目了然...
- Android动画效果
- 基于tensorflow 1.x 的bert系列预训练模型工具
- labelme批量json_to_dataset转换
- mysql update 几万 非常慢_MySQL慢日志这样分析才够味
- pthread_attr详解
- 力扣第39题dfsdfs(respathtarget-candidates[1]i)#调用递归,组成目标的 i 可以重复用,不用i+1,def dfsdfs(resres,pathtarget,ind
- 为什么DDOS攻击是服务器的最大危害?
- Symbol Factory Universal v3.X 工业图形库
- Arduino ESP8266/ESP32读取和改写MAC
- 大计基笔记(1)数学运算
- C++学习记录:派生类向基类转换及其可访问性
热门文章
- python操作pdf——pdfplumber/PyPDF2
- 搭档之家:李佳琦“双11”直播最低价,还是贵了?
- tomca的用户设置
- html做相册浏览,ul结合CSS制作网页相册滑动浏览效果
- Check It Again: Progressive Visual Question Answering via Visual Entailment
- vue使用html2canvas jspdf实现pdf下载导出功能
- 解读WPF中的Binding
- Docker 大势已去,Podman 即将崛起
- C语言关闭终端回显【转】
- 礼物帮手-论文(不全)