Not a member of GistPad yet?
Sign Up,
it unlocks many cool features!
- def check_schedule(schedule: list[tuple[str, int, int]]) -> bool:
- # 1. Проверяем, что в каждом кортеже start < end
- for _, start, end in schedule:
- if start >= end:
- return False
- # 2. Сортируем расписание по времени начала для проверки перекрытий
- sorted_schedule = sorted(schedule, key=lambda x: x[1])
- # 3. Проверяем, не заканчивается ли текущая пара позже, чем начинается следующая
- for i in range(len(sorted_schedule) - 1):
- current_end = sorted_schedule[i][2]
- next_start = sorted_schedule[i+1][1]
- if current_end > next_start:
- return False
- return True
RAW Paste Data
Copied
