一、前记(2/3)

这周的CTF比赛实在是太多了,今天刚刚结束2020CISCN。明天就要准备2020强网杯的比赛,太顶了!!!希望能认真的将这大学期间最后的CTF比赛打完。

二、题目描述

三、题目分析

1、我的分析

这道题其实说简单也还是简单,说难也比较难。简化思路:这道题就是一个求交集的一个思路。在有序元组的情况下,如果交集存在,就返回false;如果交集不存在,就返回True。

参考代码:

class Solution:
    """
    @param intervals: an array of meeting time intervals
    @return: if a person could attend all meetings
    """

    def canAttendMeetings(self, intervals):
        # Write your code here
        intervals = sorted(intervals, key=lambda x: x.start)    #用sorted()函数以里面列表首位的大小进行排列
        for i in range(len(intervals) - 1):     #元素长度
            if intervals[i].end > intervals[i + 1].start:   #前一位的尾是否大于后一位的首
                return False    #表明是有交集

        return True #表明无交集

四、学到了什么?

1、利用sort函数对列表里面的特定的值进行排列;格式为:sort(列表名,key=)