当前你的浏览器版本过低,网站已在兼容模式下运行,兼容模式仅提供最小功能支持,网站样式可能显示不正常。
请尽快升级浏览器以体验网站在线编辑、在线运行等功能。

建议使用的浏览器:

谷歌Chrome 火狐Firefox Opera浏览器 微软Edge浏览器 QQ浏览器 360浏览器 傲游浏览器

7087:对象存储调度问题

题目描述
题目背景:在华为云的对象存储调度过程中,我们会把数据对象存入分条中,而当数据对象较小时,我们会考虑聚合多个对象到一个分条中。如图所示:



题目描述:给定 $n$ 个大小 $A_1, A_2, \cdots, A_n$ 为 2 的整数次幂的数据对象,以及 $m$ 个剩余空间为 $B_1, B_2, \cdots, B_m$ 的分条。问是否可以通过对数据对象进行聚合,使得能用现有的 $m$ 个分条把所有 $n$ 个对象存下来。$T$ 组数据。
输入解释
第一行一个正整数 $T \, (1\le T \le 1000)$,表示数据组数。

对于每组数据:

第一行两个正整数 $n,m\,(1 \le n,m \le 10^5)$,分别表示数据对象的数量和分条的数量。

第二行 $n$ 个整数 $A_1, A_2, \cdots, A_n \, (1 \le A_i \le 10^9)$,表示数据对象的大小,保证 $A_i$ 为 2 的整数次幂。

第三行 $m$ 个整数 $B_1, B_2, \cdots, B_m \, (1 \le B_i \le 10^9)$,表示分条的剩余空间。

保证所有数据的 $\sum n, \sum m \le 5\times 10^5$。
输出解释
对于每组数据:

输出一行一个字符串 “Yes” 或者 “No”(均不含引号),分别表示分条能以及不能存下所有的数据对象。
输入样例
2
4 2
2 2 4 8
4 12
4 2
2 2 4 8
3 13
输出样例
Yes
No
来自杭电HDUOJ的附加信息
Hint 对于第一组样例,可以把大小为 4 的数据对象放进剩余空间为 4 的分条,其余对象放入剩余空间为 12 的分条。

该题目是Virtual Judge题目,来自 杭电HDUOJ

源链接: HDU-7087

最后修改于 2021-10-23T19:11:22+00:00 由爬虫自动更新

共提交 0

通过率 --%
时间上限 内存上限
4000/2000MS(Java/Others) 524288/524288K(Java/Others)