问题描述
假设我有N杯水,每杯有100毫升、250毫升、355毫升等不同的容量,而我有M瓶,每瓶容量不限。
我想把所有的水倒进M个瓶子里,并尽量平衡倒进不同瓶子里的水量。例如我有三杯 const req = exhaustivePoseInfoArrayTorequiredObject(exampleArray);
// const req: requiredObject
console.log(req);
/* {
"front": {
"poseType": "front","data": 1,"other": "a"
},"side": {
"poseType": "side","data": 2,"other": "b"
},"back": {
"poseType": "back","data": 3,"other": "c"
}
} */
(体积 100 毫升)、cup_1
(体积 100 毫升)、cup_2
(体积 200 毫升),我有 2 瓶。最终结果应该是:
cup_3
或
cup_1 -> bottle_1,cup_2 -> bottle_1,cup_3 -> bottle_2
在任何一种情况下,两个瓶子最终都会有 200 毫升的水,这是最好的结果。
算法是什么样的?蛮力解决方案是枚举所有可能的组合,但时间复杂度很高。有没有更好的办法?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)