From 1cc5beab45ea097f804b963f3a1746926742112b Mon Sep 17 00:00:00 2001 From: Alonza0314 Date: Wed, 28 May 2025 13:14:41 +0800 Subject: [PATCH 1/4] feat: basic setup --- Hard/2071 Maximum Number of Tasks You Can Assign.md | 1 + Hard/220 Contains Duplicate III.md | 1 + Medium/347 Top K Frequent Elements.md | 1 + README.md | 3 +++ 4 files changed, 6 insertions(+) create mode 100644 Hard/2071 Maximum Number of Tasks You Can Assign.md create mode 100644 Hard/220 Contains Duplicate III.md create mode 100644 Medium/347 Top K Frequent Elements.md diff --git a/Hard/2071 Maximum Number of Tasks You Can Assign.md b/Hard/2071 Maximum Number of Tasks You Can Assign.md new file mode 100644 index 0000000..6cc7270 --- /dev/null +++ b/Hard/2071 Maximum Number of Tasks You Can Assign.md @@ -0,0 +1 @@ +# 2071. Maximum Number of Tasks You Can Assign diff --git a/Hard/220 Contains Duplicate III.md b/Hard/220 Contains Duplicate III.md new file mode 100644 index 0000000..bd2cec4 --- /dev/null +++ b/Hard/220 Contains Duplicate III.md @@ -0,0 +1 @@ +# 220. Contains Duplicate III diff --git a/Medium/347 Top K Frequent Elements.md b/Medium/347 Top K Frequent Elements.md new file mode 100644 index 0000000..3e22807 --- /dev/null +++ b/Medium/347 Top K Frequent Elements.md @@ -0,0 +1 @@ +# 347. Top K Frequent Elements diff --git a/README.md b/README.md index b379a11..e8ab642 100644 --- a/README.md +++ b/README.md @@ -27,11 +27,13 @@ | 140 | Word Break II | [go](/Hard/140%20Word%20Break%20II.md) | H | | 146 | LRU Cache | [go](/Medium/146%20LRU%20Cache.md) | M | | 210 | Course Schedule II | [go](/Medium/210%20Course%20Schedule%20II.md) | M | +| 220 | Contains Duplicate III | [go](/Hard/220%20Contains%20Duplicate%20III.md) | H | | 236 | Lowest Common Ancestor of a Binary Tree | [go](/Medium/236%20Lowest%20Common%20Ancestor%20of%20a%20Binary%20Tree.md) | M | | 239 | Sliding Window Maximum | [go](/Hard/239%20Sliding%20Window%20Maximum.md) | H | | 312 | Burst Balloons | [go](/Hard/312%20Burst%20Balloons.md) | H | | 316 | Remove Duplicate Letters | [go](/Medium/316.%20Remove%20Duplicate%20Letters.md) | M | | 322 | Coin Change | [go](/Medium/322%20Coin%20Change.md) | M | +| 347 | Top K Frequent Elements | [go](/Medium/347%20Top%20K%20Frequent%20Elements.md) | M | | 416 | Partition Equal Subset Sum | [go](/Medium/416%20Partition%20Equal%20Subset%20Sum.md) | M | | 435 | Non-overlapping Interval | [go](/Medium/435%20Non-overlapping%20Intervals.md) | M | | 460 | LFU Cache | [go](/Hard/460%20LFU%20Cache.md) | H | @@ -53,6 +55,7 @@ | 948 | Bag of Tokens | [go](/Medium/948%20Bag%20Of%20Tokens.md) | M | | 1209 | Remove All Adjacent Duplicates in String II | [go](/Medium/1209%20Remove%20All%20Adjacent%20Duplicates%20in%20String%20II.md) | M | | 1395 | Count Number of Trams | [go](/Medium/1395%20Count%20Number%20of%20Teams.md) | M | +| 2071 | Maximum Number of Tasks You Can Assign | [go](/Hard/2071%20Maximum%20Number%20of%20Tasks%20You%20Can%20Assign.md) | H | | 2366 | Mimimum Replacements to Sort the Array | [go](/Hard/2366%20Minimum%20Replacements%20to%20Sort%20the%20Array.md) | H | | 2444 | Count Subarrays With Fixed Bounds | [go](/Hard/2444%20Count%20Subarrays%20With%20Fixed%20Bounds.md) | H | | 2742 | Paiting the Walls | [go](/Hard/2742%20Painting%20the%20Walls.md) | H | From cd4b17396a6d361109bf72b869547c06cea074d7 Mon Sep 17 00:00:00 2001 From: Alonza0314 Date: Wed, 28 May 2025 13:33:12 +0800 Subject: [PATCH 2/4] feat: 347 --- Medium/347 Top K Frequent Elements.md | 148 +++++++++++++++++++++++++ Week14/347 AC.png | Bin 0 -> 112528 bytes Week14/347 Top K Frequent Elements.md | 149 ++++++++++++++++++++++++++ 3 files changed, 297 insertions(+) create mode 100644 Week14/347 AC.png create mode 100644 Week14/347 Top K Frequent Elements.md diff --git a/Medium/347 Top K Frequent Elements.md b/Medium/347 Top K Frequent Elements.md index 3e22807..7db1c79 100644 --- a/Medium/347 Top K Frequent Elements.md +++ b/Medium/347 Top K Frequent Elements.md @@ -1 +1,149 @@ # 347. Top K Frequent Elements + +## Intuition + +The problem asks us to find the k most frequent elements in an array. The key insight is that we need to: + +1. Count the frequency of each element +2. Find the k elements with the highest frequencies + +A heap (priority queue) is perfect for this task because it allows us to efficiently maintain the top k elements based on their frequencies. + +## Approach + +1. **Count Frequencies**: Use a hash map to count the frequency of each element in the input array. +2. **Build Max Heap**: Create a max heap where elements are ordered by their frequencies. We implement a custom heap data structure with: + - A comparator function to define the heap property + - Standard heap operations: Push, Pop, Top + - Heap maintenance through up-heap and down-heap operations +3. **Extract Top K**: Push all unique elements with their frequencies into the heap, then pop k times to get the k most frequent elements. + +The custom heap implementation uses 1-indexed storage for easier parent-child calculations: + +- Parent of node i: i/2 +- Left child of node i: 2*i +- Right child of node i: 2*i+1 + +## Complexity + +- Time complexity: O(n log n) +- Space complexity: O(n) + +## Keywords + +- Hash Map +- Heap (Priority Queue) +- Frequency Counting +- Top K Problems +- Custom Data Structure + +## Code + +```go +type Comparator func(child, parent interface{}) bool +type heap struct { + Storage []interface{} + CmpFunc Comparator +} + +func NewHeap(cmpFunc Comparator) *heap { + return &heap { + Storage: append(make([]interface{}, 0), -1), + CmpFunc: cmpFunc, + } +} + +func (h *heap) Len() int { + return len(h.Storage) - 1 +} + +func (h *heap) IsEmpty() bool { + return h.Len() == 0 +} + +func (h *heap) cmp(child, parent interface{}) bool { + return h.CmpFunc(child, parent) +} + +func (h *heap) swap(x, y int) { + h.Storage[x], h.Storage[y] = h.Storage[y], h.Storage[x] +} + +func (h *heap) Top() (interface{}, error) { + if h.IsEmpty() { + return nil, errors.New("Heap is empty.") + } + return h.Storage[1], nil +} + +func (h *heap) Push(item interface{}) { + h.Storage = append(h.Storage, item) + now := h.Len() + for now / 2 > 0 && !h.cmp(h.Storage[now], h.Storage[now / 2]) { + h.swap(now, now / 2) + now /= 2 + } +} + +func (h *heap) Pop() (interface{}, error) { + top, err := h.Top() + if err != nil { + return nil, err + } + last := h.Len() + h.swap(1, last) + h.Storage = h.Storage[: last] + now := 1 + for now < last { + left, right := 0, 0 + if now * 2 < last && !h.cmp(h.Storage[now * 2], h.Storage[now]) { + left = now * 2 + } + if now * 2 + 1 < last && !h.cmp(h.Storage[now * 2 + 1], h.Storage[now]) { + right = now * 2 + 1 + } + + if left == 0 && right == 0 { + break + } else if left != 0 && right == 0 { + h.swap(now, left) + now = left + } else if left == 0 && right != 0 { + h.swap(now, right) + now = right + } else { + if h.cmp(h.Storage[left], h.Storage[right]) { + h.swap(now, right) + now = right + } else { + h.swap(now, left) + now = left + } + } + } + return top, nil +} + +func topKFrequent(nums []int, k int) []int { + cnt := make(map[int]int) + for _, num := range nums { + cnt[num] += 1 + } + type unit struct { + num, freq int + } + cmpFunc := func(child, parent interface{}) bool { + return child.(unit).freq < parent.(unit).freq + } + hp, ret := NewHeap(cmpFunc), make([]int, 0) + for key, val := range cnt { + hp.Push(unit{key, val}) + } + for k > 0 { + top, _ := hp.Pop() + ret = append(ret, top.(unit).num) + k -= 1 + } + return ret +} +``` diff --git a/Week14/347 AC.png b/Week14/347 AC.png new file mode 100644 index 0000000000000000000000000000000000000000..b67949f1b49045609b6830e38478667153a96dad GIT binary patch literal 112528 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 MXOO1lr#xf-15udKJpcdz literal 0 HcmV?d00001 diff --git a/Week14/347 Top K Frequent Elements.md b/Week14/347 Top K Frequent Elements.md new file mode 100644 index 0000000..7db1c79 --- /dev/null +++ b/Week14/347 Top K Frequent Elements.md @@ -0,0 +1,149 @@ +# 347. Top K Frequent Elements + +## Intuition + +The problem asks us to find the k most frequent elements in an array. The key insight is that we need to: + +1. Count the frequency of each element +2. Find the k elements with the highest frequencies + +A heap (priority queue) is perfect for this task because it allows us to efficiently maintain the top k elements based on their frequencies. + +## Approach + +1. **Count Frequencies**: Use a hash map to count the frequency of each element in the input array. +2. **Build Max Heap**: Create a max heap where elements are ordered by their frequencies. We implement a custom heap data structure with: + - A comparator function to define the heap property + - Standard heap operations: Push, Pop, Top + - Heap maintenance through up-heap and down-heap operations +3. **Extract Top K**: Push all unique elements with their frequencies into the heap, then pop k times to get the k most frequent elements. + +The custom heap implementation uses 1-indexed storage for easier parent-child calculations: + +- Parent of node i: i/2 +- Left child of node i: 2*i +- Right child of node i: 2*i+1 + +## Complexity + +- Time complexity: O(n log n) +- Space complexity: O(n) + +## Keywords + +- Hash Map +- Heap (Priority Queue) +- Frequency Counting +- Top K Problems +- Custom Data Structure + +## Code + +```go +type Comparator func(child, parent interface{}) bool +type heap struct { + Storage []interface{} + CmpFunc Comparator +} + +func NewHeap(cmpFunc Comparator) *heap { + return &heap { + Storage: append(make([]interface{}, 0), -1), + CmpFunc: cmpFunc, + } +} + +func (h *heap) Len() int { + return len(h.Storage) - 1 +} + +func (h *heap) IsEmpty() bool { + return h.Len() == 0 +} + +func (h *heap) cmp(child, parent interface{}) bool { + return h.CmpFunc(child, parent) +} + +func (h *heap) swap(x, y int) { + h.Storage[x], h.Storage[y] = h.Storage[y], h.Storage[x] +} + +func (h *heap) Top() (interface{}, error) { + if h.IsEmpty() { + return nil, errors.New("Heap is empty.") + } + return h.Storage[1], nil +} + +func (h *heap) Push(item interface{}) { + h.Storage = append(h.Storage, item) + now := h.Len() + for now / 2 > 0 && !h.cmp(h.Storage[now], h.Storage[now / 2]) { + h.swap(now, now / 2) + now /= 2 + } +} + +func (h *heap) Pop() (interface{}, error) { + top, err := h.Top() + if err != nil { + return nil, err + } + last := h.Len() + h.swap(1, last) + h.Storage = h.Storage[: last] + now := 1 + for now < last { + left, right := 0, 0 + if now * 2 < last && !h.cmp(h.Storage[now * 2], h.Storage[now]) { + left = now * 2 + } + if now * 2 + 1 < last && !h.cmp(h.Storage[now * 2 + 1], h.Storage[now]) { + right = now * 2 + 1 + } + + if left == 0 && right == 0 { + break + } else if left != 0 && right == 0 { + h.swap(now, left) + now = left + } else if left == 0 && right != 0 { + h.swap(now, right) + now = right + } else { + if h.cmp(h.Storage[left], h.Storage[right]) { + h.swap(now, right) + now = right + } else { + h.swap(now, left) + now = left + } + } + } + return top, nil +} + +func topKFrequent(nums []int, k int) []int { + cnt := make(map[int]int) + for _, num := range nums { + cnt[num] += 1 + } + type unit struct { + num, freq int + } + cmpFunc := func(child, parent interface{}) bool { + return child.(unit).freq < parent.(unit).freq + } + hp, ret := NewHeap(cmpFunc), make([]int, 0) + for key, val := range cnt { + hp.Push(unit{key, val}) + } + for k > 0 { + top, _ := hp.Pop() + ret = append(ret, top.(unit).num) + k -= 1 + } + return ret +} +``` From 2051d73f2c5d5cea217f60c8ffdca3570ed673e5 Mon Sep 17 00:00:00 2001 From: Alonza0314 Date: Wed, 28 May 2025 14:13:03 +0800 Subject: [PATCH 3/4] feat: 220 --- Hard/220 Contains Duplicate III.md | 82 ++++++++++++++++++++++++++ Week14/220 AC.png | Bin 0 -> 128599 bytes Week14/220 Contains Duplicate III.md | 83 +++++++++++++++++++++++++++ 3 files changed, 165 insertions(+) create mode 100644 Week14/220 AC.png create mode 100644 Week14/220 Contains Duplicate III.md diff --git a/Hard/220 Contains Duplicate III.md b/Hard/220 Contains Duplicate III.md index bd2cec4..b32181c 100644 --- a/Hard/220 Contains Duplicate III.md +++ b/Hard/220 Contains Duplicate III.md @@ -1 +1,83 @@ # 220. Contains Duplicate III + +## Intuition + +The problem asks us to find if there are two distinct indices i and j such that: + +1. The absolute difference between indices is at most k: |i - j| <= k +2. The absolute difference between values is at most t: |nums[i] - nums[j]| <= t + +The key insight is to use a bucket sort approach where we group numbers into buckets of size (t + 1). If two numbers are in the same bucket, their difference is guaranteed to be <= t. We also need to check adjacent buckets since numbers in neighboring buckets might have a difference <= t. + +## Approach + +1. **Bucket Strategy**: Create buckets of width (t + 1). Numbers in the same bucket will have a difference <= t. +2. **Bucket Index Calculation**: + - For positive numbers: `bucketIdx = num / width` + - For negative numbers: `bucketIdx = (num / width) - 1` (to handle negative division correctly) +3. **Three Checks for Each Number**: + - Same bucket: If current bucket already has a number, return true + - Right adjacent bucket: Check if |num - bucket[bucketIdx + 1]| <= t + - Left adjacent bucket: Check if |num - bucket[bucketIdx - 1]| <= t +4. **Sliding Window**: Maintain at most k+1 elements by removing the element that's k+1 positions behind the current element. +5. **Edge Case Handling**: Special handling for negative numbers to ensure correct bucket assignment. + +## Complexity + +- Time complexity: O(n) +- Space complexity: O(min(n, k)) + +## Keywords + +- Bucket Sort +- Sliding Window +- Hash Map + +## Code + +```go +func containsNearbyAlmostDuplicate(nums []int, k int, t int) bool { + abs := func(x int) int { + if x < 0 { + return -x + } + return x + } + + bucket, width := make(map[int]int), t + 1 + for i, num := range nums { + var bucketIdx int + + if num >= 0 { + bucketIdx = num / width + } else { + bucketIdx = (num / width) - 1 + } + + if _, exist := bucket[bucketIdx]; exist { + return true + } + if n, exist := bucket[bucketIdx + 1]; exist && abs(num - n) < width { + return true + } + if n, exist := bucket[bucketIdx - 1]; exist && abs(num - n) < width { + return true + } + + bucket[bucketIdx] = num + + if i >= k { + var delBucketIdx int + + if nums[i - k] >= 0 { + delBucketIdx = nums[i - k] / width + } else { + delBucketIdx = (nums[i - k] / width) - 1 + } + + delete(bucket, delBucketIdx) + } + } + return false +} +``` diff --git a/Week14/220 AC.png b/Week14/220 AC.png new file mode 100644 index 0000000000000000000000000000000000000000..6cd6e7bf06c84f9c22e83eee7bdfc307e542a066 GIT binary patch literal 128599 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 ERg%sAgNz5Bki5+$%#D4=NujZy6DqDa4a@ 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 literal 0 HcmV?d00001 diff --git a/Week14/220 Contains Duplicate III.md b/Week14/220 Contains Duplicate III.md new file mode 100644 index 0000000..b32181c --- /dev/null +++ b/Week14/220 Contains Duplicate III.md @@ -0,0 +1,83 @@ +# 220. Contains Duplicate III + +## Intuition + +The problem asks us to find if there are two distinct indices i and j such that: + +1. The absolute difference between indices is at most k: |i - j| <= k +2. The absolute difference between values is at most t: |nums[i] - nums[j]| <= t + +The key insight is to use a bucket sort approach where we group numbers into buckets of size (t + 1). If two numbers are in the same bucket, their difference is guaranteed to be <= t. We also need to check adjacent buckets since numbers in neighboring buckets might have a difference <= t. + +## Approach + +1. **Bucket Strategy**: Create buckets of width (t + 1). Numbers in the same bucket will have a difference <= t. +2. **Bucket Index Calculation**: + - For positive numbers: `bucketIdx = num / width` + - For negative numbers: `bucketIdx = (num / width) - 1` (to handle negative division correctly) +3. **Three Checks for Each Number**: + - Same bucket: If current bucket already has a number, return true + - Right adjacent bucket: Check if |num - bucket[bucketIdx + 1]| <= t + - Left adjacent bucket: Check if |num - bucket[bucketIdx - 1]| <= t +4. **Sliding Window**: Maintain at most k+1 elements by removing the element that's k+1 positions behind the current element. +5. **Edge Case Handling**: Special handling for negative numbers to ensure correct bucket assignment. + +## Complexity + +- Time complexity: O(n) +- Space complexity: O(min(n, k)) + +## Keywords + +- Bucket Sort +- Sliding Window +- Hash Map + +## Code + +```go +func containsNearbyAlmostDuplicate(nums []int, k int, t int) bool { + abs := func(x int) int { + if x < 0 { + return -x + } + return x + } + + bucket, width := make(map[int]int), t + 1 + for i, num := range nums { + var bucketIdx int + + if num >= 0 { + bucketIdx = num / width + } else { + bucketIdx = (num / width) - 1 + } + + if _, exist := bucket[bucketIdx]; exist { + return true + } + if n, exist := bucket[bucketIdx + 1]; exist && abs(num - n) < width { + return true + } + if n, exist := bucket[bucketIdx - 1]; exist && abs(num - n) < width { + return true + } + + bucket[bucketIdx] = num + + if i >= k { + var delBucketIdx int + + if nums[i - k] >= 0 { + delBucketIdx = nums[i - k] / width + } else { + delBucketIdx = (nums[i - k] / width) - 1 + } + + delete(bucket, delBucketIdx) + } + } + return false +} +``` From a287c074c4bf454b50b9046821987d7915f36fe4 Mon Sep 17 00:00:00 2001 From: Alonza0314 Date: Wed, 28 May 2025 15:03:01 +0800 Subject: [PATCH 4/4] feat: 2071 --- ... Maximum Number of Tasks You Can Assign.md | 80 +++++++++++++++++ Week14/2071 AC.png | Bin 0 -> 43117 bytes ... Maximum Number of Tasks You Can Assign.md | 81 ++++++++++++++++++ 3 files changed, 161 insertions(+) create mode 100644 Week14/2071 AC.png create mode 100644 Week14/2071 Maximum Number of Tasks You Can Assign.md diff --git a/Hard/2071 Maximum Number of Tasks You Can Assign.md b/Hard/2071 Maximum Number of Tasks You Can Assign.md index 6cc7270..a43ed75 100644 --- a/Hard/2071 Maximum Number of Tasks You Can Assign.md +++ b/Hard/2071 Maximum Number of Tasks You Can Assign.md @@ -1 +1,81 @@ # 2071. Maximum Number of Tasks You Can Assign + +## Intuition + +The problem asks us to find the maximum number of tasks we can assign to workers, where each worker can complete at most one task. Workers have different strengths, tasks have different requirements, and we have a limited number of pills that can boost a worker's strength by a fixed amount. + +The key insight is that this is an optimization problem where we want to maximize the number of completed tasks. We can use binary search on the answer - if we can complete k tasks, we might be able to complete k+1 tasks, but if we can't complete k tasks, we definitely can't complete more than k tasks. + +## Approach + +1. **Sort both arrays**: Sort tasks in ascending order and workers in descending order of their strength. +2. **Binary search on the answer**: Use binary search to find the maximum number of tasks we can complete. The search space is from 0 to min(len(tasks), len(workers)). +3. **Greedy assignment strategy**: For a given number k of tasks to complete: + - Take the k easiest tasks (first k tasks after sorting) + - Take the k strongest workers (last k workers after sorting) + - Process tasks from hardest to easiest among the selected k tasks + - For each task, try to assign it using the greedy strategy: + - First, try to assign the strongest available worker without using a pill + - If that's not possible, find the weakest worker who can complete the task with a pill + - If no worker can complete the task even with a pill, return false +4. **Optimization with pills**: When we need to use a pill, we should use it on the weakest possible worker who can complete the task. This preserves stronger workers for harder tasks. + +The greedy strategy works because: + +- We process harder tasks first, ensuring they get priority for stronger workers +- When using pills, we use them on the weakest capable worker to preserve stronger workers +- This maximizes our chances of completing all k tasks + +## Complexity + +- Time complexity: O(n log n + m log m + log(min(n,m)) × m log m) +- Space complexity: O(m) + +## Keywords + +- Binary Search +- Greedy Algorithm + +## Code + +```go +func maxTaskAssign(tasks []int, workers []int, pills int, strength int) int { + sort.Ints(tasks) + sort.Ints(workers) + + canAssign := func(k int) bool { + avail, remain := append(make([]int, 0), workers[len(workers) - k:]...), pills + for i := k - 1; i >= 0; i -= 1 { + require := tasks[i] + if len(avail) > 0 && avail[len(avail) - 1] >= require { + avail = avail[: len(avail) - 1] + } else { + if remain <= 0 { + return false + } + thresold := require - strength + idx := sort.Search(len(avail), func(j int) bool { + return avail[j] >= thresold + }) + if idx == len(avail) { + return false + } + avail = append(avail[:idx], avail[idx + 1:]...) + remain -= 1 + } + } + return true + } + + left, right, complete := 0, min(len(tasks), len(workers)), 0 + for left <= right { + mid := (left + right) / 2 + if canAssign(mid) { + complete, left = mid, mid + 1 + } else { + right = mid - 1 + } + } + return complete +} +``` diff --git a/Week14/2071 AC.png b/Week14/2071 AC.png new file mode 100644 index 0000000000000000000000000000000000000000..4e94541fa010de1fe5b4eaa719cb895cb5929295 GIT binary patch literal 43117 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 C#VH>E literal 0 HcmV?d00001 diff --git a/Week14/2071 Maximum Number of Tasks You Can Assign.md b/Week14/2071 Maximum Number of Tasks You Can Assign.md new file mode 100644 index 0000000..a43ed75 --- /dev/null +++ b/Week14/2071 Maximum Number of Tasks You Can Assign.md @@ -0,0 +1,81 @@ +# 2071. Maximum Number of Tasks You Can Assign + +## Intuition + +The problem asks us to find the maximum number of tasks we can assign to workers, where each worker can complete at most one task. Workers have different strengths, tasks have different requirements, and we have a limited number of pills that can boost a worker's strength by a fixed amount. + +The key insight is that this is an optimization problem where we want to maximize the number of completed tasks. We can use binary search on the answer - if we can complete k tasks, we might be able to complete k+1 tasks, but if we can't complete k tasks, we definitely can't complete more than k tasks. + +## Approach + +1. **Sort both arrays**: Sort tasks in ascending order and workers in descending order of their strength. +2. **Binary search on the answer**: Use binary search to find the maximum number of tasks we can complete. The search space is from 0 to min(len(tasks), len(workers)). +3. **Greedy assignment strategy**: For a given number k of tasks to complete: + - Take the k easiest tasks (first k tasks after sorting) + - Take the k strongest workers (last k workers after sorting) + - Process tasks from hardest to easiest among the selected k tasks + - For each task, try to assign it using the greedy strategy: + - First, try to assign the strongest available worker without using a pill + - If that's not possible, find the weakest worker who can complete the task with a pill + - If no worker can complete the task even with a pill, return false +4. **Optimization with pills**: When we need to use a pill, we should use it on the weakest possible worker who can complete the task. This preserves stronger workers for harder tasks. + +The greedy strategy works because: + +- We process harder tasks first, ensuring they get priority for stronger workers +- When using pills, we use them on the weakest capable worker to preserve stronger workers +- This maximizes our chances of completing all k tasks + +## Complexity + +- Time complexity: O(n log n + m log m + log(min(n,m)) × m log m) +- Space complexity: O(m) + +## Keywords + +- Binary Search +- Greedy Algorithm + +## Code + +```go +func maxTaskAssign(tasks []int, workers []int, pills int, strength int) int { + sort.Ints(tasks) + sort.Ints(workers) + + canAssign := func(k int) bool { + avail, remain := append(make([]int, 0), workers[len(workers) - k:]...), pills + for i := k - 1; i >= 0; i -= 1 { + require := tasks[i] + if len(avail) > 0 && avail[len(avail) - 1] >= require { + avail = avail[: len(avail) - 1] + } else { + if remain <= 0 { + return false + } + thresold := require - strength + idx := sort.Search(len(avail), func(j int) bool { + return avail[j] >= thresold + }) + if idx == len(avail) { + return false + } + avail = append(avail[:idx], avail[idx + 1:]...) + remain -= 1 + } + } + return true + } + + left, right, complete := 0, min(len(tasks), len(workers)), 0 + for left <= right { + mid := (left + right) / 2 + if canAssign(mid) { + complete, left = mid, mid + 1 + } else { + right = mid - 1 + } + } + return complete +} +```