- 论坛徽章:
- 0
|
def look(a, max = 0):
a.sort()
while 1:
if len(a) == 0:return None
val = a.pop()
if val <= max:return val
def ab(a , b):
a.extend(b)
sum = reduce(lambda x,y:x+y, a)
arvg = sum / 2.0
rs1 = []
def qq(arvg, pick = None):
if pick is None:
pick = a.pop()
else:
a.remove(pick)
rs1.append(pick)
arvg -= pick
pick = look(a[:], max = arvg)
if pick is not None:qq(arvg, pick)
qq(arvg)
print rs1, a
ab([1,2,5,3],[6,7,8,9,10]) |
[ 本帖最后由 bawbaw 于 2009-6-27 10:44 编辑 ] |
|