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

按占比分配完整金条(含x比例小金条)的最优算法设计问询

金条分配最优算法设计问题

现有N根大金条,外加1根重量为大金条x比例的小金条(比如N=10、x=0.5时,总黄金等价于10.5根大金条)。需要把这些完整金条分配给T名小偷,其中小偷i(记为T_i)应获得占比为s_i的份额(比如T=3时,小偷1占40%、小偷2占50%、小偷3占10%)。

要求设计算法,使得分配后各小偷的实际黄金重量占比与目标占比尽可能接近,且金条不可切割。


曾尝试的方案及问题

尝试过给每个小偷分配NearestInteger((总黄金量)*s_i)根金条(总黄金量=N+x),用示例数据测试结果如下:

小偷占比s_i10.5×占比取整后数量
140%4.24
250%5.255
310%1.051

该方案存在以下问题:

  • 分配总量与实际总黄金量不符(示例中分配总和为10,而非10.5),可能出现分配不足或超额;
  • 无法分配小金条;
  • 无法证明此方案能使实际占比与目标占比最接近。

若将剩余黄金分配给最后一名小偷,会导致该小偷始终承担剩余部分的偏差。


最优定义补充

"最优"指最小化目标占比(s₁,s₂,…,sₙ)与实际占比(r₁,r₂,…,rₙ)之间的欧氏距离;若存在多个最优分配,无需指定具体分配对象。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 12:35:23