发送快递(express) 描述 小华有 n 本不同的书(编号为 1,2,3,.....,n),重量分别是 a1、a2、……、an公斤(重量可以相同)。他想把这些书以快递的方式发给自己的好朋友,要求每个包裹的重量不能超过 m 公斤(可以等于 m 公斤),并且小华想把其中一些书(一组书,用书的编号给出来)放在一个包裹里,应该如何打包才能使得快递件数最少。 输入 输入文件名为 express.in 第一行,包含两个整数 n、m,之间用一个空格隔开,分别表示书的数量和快递包裹的最大重量。 第二行 n 个整数 ai,表示 n 本书的重量,每两个整数之间用一个空格隔开。 第三行一个整数 s,表示一共有 s 组书(每组书需要打包在一起)。如果 s=0,则无此限制。数据保证每组书的重量不超过 m。 第四行开始共 s 行,每行若干个整数,表示必须放在一个包裹里的书的编号,每两个整数之间用一个空格隔开。 输出 输出文件名为 express.out 输出文件一行,一个整数,即快递最少件数。 输入样例 1 5 10 8 4 8 2 5 0 输出样例 1 3 输入样例 2 10 80 49 11 44 18 28 24 19 10 27 29 2 1 5 4 8 2 输出样例 2 4 提示 【输入输出样例 1 说明】 第 1 本和第 4 本打包,重量是 10 公斤。第 2 本和第 5 本打包,重量是 9公斤。第 3 本单独打包,重量是 8 公斤。所以一共 3 件快递。 【输入输出样例 2 说明】 第 1 本和第 5 本打包,第 2 本、第 4 本、第 8 本和第 10 本打包,第 3本和第 7 本打包,第 6 本和第 9 本打包。所以一共 4 件快递。 【数据范围和限制】 对于 40%的数据,1 ≤ n ≤ 105,1 ≤ ai≤ 100,s=0,m 的值保证有解。 对于 100%的数据,1 ≤ n ≤ 105,1 ≤ ai≤ 100,0 ≤ s ≤ 100,m的值保证有解。

相关推荐

03-15 00:45
已编辑
高德地图_go开发(实习员工)
问的很简单都秒了,但是面试官没开摄像头,疑似kpi,无后续。--------------------3/14更新,3/12通知给了口头offer,3/13发了意向书,已拒。一面(35min)(25/3/6)(无后续)    1、自我介绍    2、介绍一下你的那个Python相关项目(本科毕设,web系统+算法模型提供部分接口)    3、Java面向对象有哪些特点呢?详细说一下。    4、介绍一下hashmap;为什么要把链表转换为红黑树呢?红黑树查找的时间复杂度?1.7和1.8的区别。    5、介绍一下concurrentHashmap。    6、synchronized锁和Lock锁有什么区别?    7、公平锁的一个底层是怎么实现的呢?    8、线程池的核心参数、拒绝策略、提交一个任务执行流程?    9、spring有哪些特点?(ioc/aop)    10、spring中对于循环依赖是怎么解决的?    11、MySQL和redis的区别?    12、MySQL的索引结构是什么?    13、MySQL的事务有哪些特性?怎么保证?    14、MySQL的默认隔离级别?可重复读是怎么做到的呢?    15、介绍一下MVCC和快照读readview。    16、一般在什么场景下会使用redis?    17、对于大量的请求,如果此时缓存中还没有写入数据怎么办?    18、介绍一下redis实现的分布式锁。    19、有用过es和mongo DB吗?(知道,没用过)    20、消息中间件用过吗?说一下你的使用场景?    21、一个场景,如果说有一个接口响应的比较慢,如果说让你排查,你会怎么去排查?(上下游接口、大key问题,只答了两,后面试官补充)    无手撕,反问业务。
胖墩墩的查理在学c语言:哥们我是五号面的 流程差不多
查看21道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务