乘船问题-解题

问题描述:有n个人,第i个人的重量是Wi。每艘船的最大载重均为C,且最多容纳两个人,用最少的船装载所有人。

n = 10
w = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
c = 10

cnt_of_boat = 0


w.sort()
p1 = 0
p2 = len(w) - 1
while p1 <= p2:
    if w[p1] + w[p2] > c:
        p2 -= 1
        cnt_of_boat += 1
    else:
        p1 += 1
        p2 -= 1
        cnt_of_boat += 1
print(cnt_of_boat)
posted @ 2021-03-11 20:49  EdenWu  阅读(508)  评论(0编辑  收藏  举报