求助:给出一组整数,例如,(19,27,42,...)现在请把他们分成三堆,使得每一堆的和相等 给出一组整数,例如,(19,27,42,...)现在请把他们分成三堆,使得每一堆的和相等; a。如何判断该问题是否有解 b。请给出解决方案的算法(尽可能每堆相等的算法)昨天笔试的时候遇到的,谢谢啦! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 似乎不那么容易呐。分成三堆,每堆和相等,说明每堆的和就只能是 所有数总和的1/3。但这样只能判断出如果总和如果不是3的倍数就一定无解,但是否一定有解还没法直接判断出来。接下来这个问题就变成著名的“背包”问题了:已知各物品重量,有三个背包,承重能力刚好是所有物品重量的1/3,请问所有物品应如何装入背包中。笔试的话,似乎很够喝一壶的了。 判断该问题是否有解,用搜索足矣(如果根数过多可能会爆空间,爆时间)。至于,尽可能接近的算法。感觉不是很容易。搜索只能给出如果有解,解的情况。 搜索??是指穷举吗?那样太暴力了吧?! 先考虑是否能被3整除,如果不行那肯定不能分。如果可以,那么可以先排序,按从大到小,如果最大的大于了总和的1/3那么也肯定不行。在排除以上两种情况下,然后开始循环搜索吧。 尽可能没堆都相等的话比较难 java 知识在线等 谢谢 JAVA文件的读取速度哪种最快 集合中Iterator如何计数 用最有效的方法计算2*?=8 是什么意思 做JAVA数字证书时遇到的一个问题。 文件创建问题 Jtree问题(急),请能给个例子 怎样固定一个JFrame的边框大小阿??? 不知道那里有问题。。。请高手帮帮忙看一下。。。谢谢!在线等! 各位给我个真诚的建议,现在处于极度的郁闷和痛苦之中!!!!! 如何用JavaSE写一个简易的HTTP服务器 java中多继承问题
已知各物品重量,有三个背包,承重能力刚好是所有物品重量的1/3,请问所有物品应如何装入背包中。笔试的话,似乎很够喝一壶的了。
搜索??是指穷举吗?那样太暴力了吧?!
如果可以,那么可以先排序,按从大到小,如果最大的大于了总和的1/3那么也肯定不行。
在排除以上两种情况下,然后开始循环搜索吧。