diff --git a/go/max-number-of-k-sum-pairs.go b/go/max-number-of-k-sum-pairs.go new file mode 100644 index 0000000..15834eb --- /dev/null +++ b/go/max-number-of-k-sum-pairs.go @@ -0,0 +1,24 @@ +package main + +import "slices" + +func maxOperations(nums []int, k int) int { + slices.Sort(nums) + + operations := 0 + + l, r := 0, len(nums)-1 + for l < r { + if nums[l]+nums[r] == k { + operations++ + l++ + r-- + } else if nums[l]+nums[r] < k { + l++ + } else { + r-- + } + } + + return operations +}