From e295875d8fb57aab611745cf8a063e81541a366f Mon Sep 17 00:00:00 2001 From: Jinbeom Date: Thu, 7 Nov 2024 15:49:30 +0900 Subject: [PATCH 1/5] Meeting Rooms Solution --- course-schedule/sksks.py | 0 meeting-rooms/kayden.py | 0 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 course-schedule/sksks.py create mode 100644 meeting-rooms/kayden.py diff --git a/course-schedule/sksks.py b/course-schedule/sksks.py new file mode 100644 index 000000000..e69de29bb diff --git a/meeting-rooms/kayden.py b/meeting-rooms/kayden.py new file mode 100644 index 000000000..e69de29bb From 5b258bd396b96cb8f289d7e4bd22f6977f57ad3a Mon Sep 17 00:00:00 2001 From: Jinbeom Date: Thu, 7 Nov 2024 15:50:26 +0900 Subject: [PATCH 2/5] Meeting Rooms Solution --- course-schedule/sksks.py | 0 meeting-rooms/kayden.py | 14 ++++++++++++++ 2 files changed, 14 insertions(+) delete mode 100644 course-schedule/sksks.py diff --git a/course-schedule/sksks.py b/course-schedule/sksks.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/meeting-rooms/kayden.py b/meeting-rooms/kayden.py index e69de29bb..3bfe019eb 100644 --- a/meeting-rooms/kayden.py +++ b/meeting-rooms/kayden.py @@ -0,0 +1,14 @@ +class Solution: + # 시간복잡도: O(NlogN) + # 공간복잡도: O(1) + def can_attend_meetings(self, intervals: List[Interval]) -> bool: + intervals.sort() + + prev = 0 + for start, end in intervals: + if end < prev: + return False + + prev = end + + return True \ No newline at end of file From 277e0b7b13ff3911a79c02797f40f7b78c7d3433 Mon Sep 17 00:00:00 2001 From: Jinbeom Date: Thu, 7 Nov 2024 15:54:11 +0900 Subject: [PATCH 3/5] Meeting Rooms Solution --- meeting-rooms/kayden.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meeting-rooms/kayden.py b/meeting-rooms/kayden.py index 3bfe019eb..e2445952f 100644 --- a/meeting-rooms/kayden.py +++ b/meeting-rooms/kayden.py @@ -11,4 +11,4 @@ def can_attend_meetings(self, intervals: List[Interval]) -> bool: prev = end - return True \ No newline at end of file + return True From 68d542cea687ed269488ab0598ff29ed3ce456f1 Mon Sep 17 00:00:00 2001 From: Jinbeom Date: Thu, 7 Nov 2024 21:21:21 +0900 Subject: [PATCH 4/5] Lowest Common Ancestor of a Binary Search Tree Solution --- .../kayden.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 lowest-common-ancestor-of-a-binary-search-tree/kayden.py diff --git a/lowest-common-ancestor-of-a-binary-search-tree/kayden.py b/lowest-common-ancestor-of-a-binary-search-tree/kayden.py new file mode 100644 index 000000000..fc4d30ca8 --- /dev/null +++ b/lowest-common-ancestor-of-a-binary-search-tree/kayden.py @@ -0,0 +1,20 @@ +class Solution: + # 시간복잡도: O(N) + # 공간복잡도: O(1) + def lowestCommonAncestor(self, root: 'TreeNode', p: 'TreeNode', q: 'TreeNode') -> 'TreeNode': + def find(node): + if not node: + return None + + left = find(node.left) + right = find(node.right) + + if node == p or node == q: + return node + + if left and right: + return node + + return left or right + + return find(root) From 0c41ad3186488eb0d002c4cc39d2314099757cc0 Mon Sep 17 00:00:00 2001 From: Jinbeom Date: Fri, 8 Nov 2024 05:23:39 +0900 Subject: [PATCH 5/5] House Robber Solution --- house-robber/kayden.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 house-robber/kayden.py diff --git a/house-robber/kayden.py b/house-robber/kayden.py new file mode 100644 index 000000000..97f71ee52 --- /dev/null +++ b/house-robber/kayden.py @@ -0,0 +1,11 @@ +class Solution: + # 시간복잡도: O(N) + # 공간복잡도: O(1) + def rob(self, nums: List[int]) -> int: + one, two = 0, 0 + + for num in nums: + temp = max(two+num, one) + two, one = one, temp + + return one