From 0c33fcb39b17d919fe1380a13199a5745de56f1c Mon Sep 17 00:00:00 2001 From: Won Joon Thomas Choi <113500771+724thomas@users.noreply.github.com> Date: Thu, 3 Sep 2026 22:28:13 +0900 Subject: [PATCH 1/2] Create 3774. Absolute Difference Between Maximum and Minimum K Elements.py --- ... Difference Between Maximum and Minimum K Elements.py" | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 "leetcode3/\354\265\234\354\233\220\354\244\200/3774. Absolute Difference Between Maximum and Minimum K Elements.py" diff --git "a/leetcode3/\354\265\234\354\233\220\354\244\200/3774. Absolute Difference Between Maximum and Minimum K Elements.py" "b/leetcode3/\354\265\234\354\233\220\354\244\200/3774. Absolute Difference Between Maximum and Minimum K Elements.py" new file mode 100644 index 00000000..a5b970e1 --- /dev/null +++ "b/leetcode3/\354\265\234\354\233\220\354\244\200/3774. Absolute Difference Between Maximum and Minimum K Elements.py" @@ -0,0 +1,8 @@ +class Solution: + def absDifference(self, nums: List[int], k: int) -> int: + nums.sort() + n = len(nums) + ans = 0 + for i in range(k): + ans += nums[n-i-1] - nums[i] + return ans From d15974d132c66fcc05f9ec6e19b1063f237cdd89 Mon Sep 17 00:00:00 2001 From: Won Joon Thomas Choi <113500771+724thomas@users.noreply.github.com> Date: Thu, 3 Sep 2026 22:28:38 +0900 Subject: [PATCH 2/2] Create 870. Advantage Shuffle.py --- .../870. Advantage Shuffle.py" | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 "leetcode3/\354\265\234\354\233\220\354\244\200/870. Advantage Shuffle.py" diff --git "a/leetcode3/\354\265\234\354\233\220\354\244\200/870. Advantage Shuffle.py" "b/leetcode3/\354\265\234\354\233\220\354\244\200/870. Advantage Shuffle.py" new file mode 100644 index 00000000..46c3a2f0 --- /dev/null +++ "b/leetcode3/\354\265\234\354\233\220\354\244\200/870. Advantage Shuffle.py" @@ -0,0 +1,28 @@ +class Solution: + def advantageCount(self, nums1: List[int], nums2: List[int]) -> List[int]: + def get_sorted_queue(nums): + num = [[nums[i], i] for i in range(len(nums))] + num.sort() + return deque(num) + + queue1 = get_sorted_queue(nums1) + queue2 = get_sorted_queue(nums2) + ans = [0] * len(nums1) + + while queue1 and queue2: + biggest1, _ = queue1[-1] + smallest1, _ = queue1[0] + + biggest2, index1 = queue2[-1] + smallest2, index2 = queue2[0] + + if biggest1 > biggest2: + biggest1, _ = queue1.pop() + biggest2, index1 = queue2.pop() + ans[index1] = biggest1 + else: + smallest1, _ = queue1.popleft() + biggest2, index2 = queue2.pop() + ans[index2] = smallest1 + + return ans