小华想用他的优盘拷贝 n 个文件,他的优盘的最大容纳空间为 m。 第 i 个文件所需占用的空间大小为 ai。 为了一次性拷贝所有文件,他可以将文件进行压缩。 已知,第 i 个文件经过压缩后,所占空间大小可以从 ai 变为 bi。 请问,他最少需要压缩多少个文件,才能使得优盘可以装下所有文件(即所有文件的所占空间之和不大于 m)。
时间: 2023-03-20 18:06:42 浏览: 190
拖拽文件或点击选择文件, 支持格式:zip,rar,7z,gz,tgz, 单个文件限1GB。 选择文件_mei
小华需要压缩至少 k 个文件才能使得优盘可以装下所有文件,其中 k 是满足以下条件的最小非负整数:
将文件按照 bi/ai 的大小比从小到大排序,设排序后第 i 个文件的原始大小为 ai[i],压缩后大小为 bi[i],则前 k 个文件的原始大小之和不超过 m,而前 k+1 个文件的原始大小之和超过 m。
阅读全文