花开堪折直须折,莫待无花空折|

zylyehuo

园龄:2年2个月粉丝:54关注:8

贪心算法--活动选择问题

博客地址:https://www.cnblogs.com/zylyehuo/

# -*- coding: utf-8 -*-


def activity_selection(a):
    res = [a[0]]
    for i in range(1, len(a)):
        if a[i][0] >= res[-1][1]:  # 当前活动的开始时间小于等于最后一个入选活动的结束时间
            # 不冲突
            res.append(a[i])
    return res


# 活动元组(开始时间,结束时间)
activities = [(1, 4), (3, 5), (0, 6), (5, 7), (3, 9), (5, 9), (6, 10), (8, 11), (8, 12), (2, 14), (12, 16)]
# 保证活动是按照结束时间排好序的
activities.sort(key=lambda x: x[1])

print(activity_selection(activities))

本文作者:zylyehuo

本文链接:https://www.cnblogs.com/zylyehuo/p/17642181.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   zylyehuo  阅读(17)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起