You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求Excel公式:计算多规格文件在硬盘的最优空间适配组合

硬盘空间最优文件组合计算方案

这种通过逐步替换文件来最大化空间利用率的思路完全可行,以下是具体的Excel实现方法,针对你给出的10900GB剩余空间、59GB和71GB文件的场景:

一、基础参数定义

先在固定单元格设置核心参数:

  • 硬盘剩余空间:A2=10900
  • 59GB文件大小:K5=59
  • 71GB文件大小:L5=71

二、初始方案计算

  1. 初始可存放59GB文件数量:
    =FLOOR.PRECISE(A2/K5)
    
    计算结果为184,此时剩余空间:
    =A2 - (FLOOR.PRECISE(A2/K5)*K5)
    
    结果为44GB。

三、替换优化的实现方法

方法1:辅助列逐步迭代(直观易操作)

通过辅助列逐个尝试替换次数,找到剩余空间最小的组合:

  1. 在D2:D10输入替换次数(从0到9,足够覆盖最优解范围);
  2. 在E2计算替换x次后可支配的总空间(原剩余+腾出的59GB空间):
    =(A2 - FLOOR.PRECISE(A2/K5)*K5) + D2*K5
    
  3. 在F2计算该空间可存放的71GB文件数:
    =FLOOR.PRECISE(E2/L5)
    
  4. 在G2计算最终剩余空间:
    =E2 - F2*L5
    
  5. 查看G列的最小值,对应的D2就是最优替换次数,F2是新增的71GB文件数。

针对你的场景,当替换次数x=51时,剩余空间为0,是最优解:

  • 最终59GB文件数量:184-51=133
  • 71GB文件数量:43
  • 总占用:133*59 +43*71=10900,完全利用空间。

方法2:公式直接计算最优解(无需辅助列)

利用数论中的模运算,直接计算最优的文件数量:

  1. 计算最优59GB文件数量(数组公式,需按Ctrl+Shift+Enter输入):
    =FLOOR.PRECISE(A2/K5) - MATCH(MIN(MOD(A2 - ROW(INDIRECT("1:"&FLOOR.PRECISE(A2/K5)))*K5, L5)), MOD(A2 - ROW(INDIRECT("1:"&FLOOR.PRECISE(A2/K5)))*K5, L5), 0) + 1
    
  2. 计算对应的71GB文件数量:
    =FLOOR.PRECISE((A2 - 上述单元格*K5)/L5)
    

四、关于IF函数的使用

用IF函数只能实现单次替换判断,比如:

=IF((剩余空间 + K5) >= L5, 初始数量-1, 初始数量)

但无法自动完成多次迭代替换。如果要仅用IF实现多次优化,需要嵌套多层IF,但次数有限,不如辅助列或数组公式灵活。

内容的提问来源于stack exchange,提问作者Daniel Garcia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 10:10:37