From 26f4766bc72709e1edaab8337e34beb71a87d7b2 Mon Sep 17 00:00:00 2001 From: Hykilpikonna Date: Sun, 3 Oct 2021 15:51:39 -0400 Subject: [PATCH] [O] A2 P3 make is_valid clearer --- assignments/a2/a2_part3.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/assignments/a2/a2_part3.py b/assignments/a2/a2_part3.py index a230e29..0115a7f 100644 --- a/assignments/a2/a2_part3.py +++ b/assignments/a2/a2_part3.py @@ -104,7 +104,6 @@ def times_conflict(m1: tuple[str, datetime.time, datetime.time], # assuming each course has at least one hour of duration # Case 2: 1 starts earlier than 2 and 1 ends later than the start of 2, conflict # Case 3: 2 starts earlier than 1 and 2 ends later than the start of 1, conflict - # TODO: Can we assume that end1 > start1 and end2 > start2? return day1 == day2 and \ (start1 == start2 or (start1 < start2 < end1) or (start2 < start1 < end2)) @@ -138,7 +137,7 @@ def is_valid(schedule: dict[str, tuple[str, str, tuple]]) -> bool: - schedule matches the format for a schedule described by the assignment handout. """ sections = schedule.values() - return all(not sections_conflict(s1, s2) or (s1 == s2) for s1 in sections for s2 in sections) + return all(not sections_conflict(s1, s2) for s1 in sections for s2 in sections if s1 != s2) def possible_schedules(c1: tuple[str, str, set], c2: tuple[str, str, set]) \