算法题目
在数据存储和备份的实际场景中,我们常常需要考虑资源的有效利用。本题聚焦于使用刻录光盘的方式对文件进行备份,每张光盘的容量固定为 500MB。现在给定若干个文件,这些文件的大小均为整数 MB,且单个文件大小不超过 500MB,同时文件不能进行分割或分卷打包。我们的目标是找出一种文件分布方式,使得使用的光盘数量最少。
输入为一组表示文件大小的数据,输出则是使用的最少光盘数量。同时,无需考虑输入数据不合法的情况,假设输入的文件最多为 100 个,并且输入和输出内容都不含空格。
示例
- 示例一
- 输入:
100,500,300,200,400
- 输出:
3
- 说明:一种合理的存储方式为
(100,400),(200,300),(500)
,只需要 3 张光盘即可完成所有文件的备份。
- 输入:
- 示例二
- 输入:
100,100,200,300
- 输出:
2
- 输入:
解题思路
本题可使用深度优先搜索(DFSÿ