lc-go/solutions/q150/solution.go
2025-12-09 15:27:40 +09:00

24 lines
400 B
Go

package q150
func twoSum(numbers []int, target int) []int {
l, r := 0, len(numbers)-1
for l < r {
for numbers[r]+numbers[l] > target {
r--
}
if numbers[r]+numbers[l] == target {
return []int{l + 1, r + 1}
}
for numbers[r]+numbers[l] < target {
l++
}
if numbers[r]+numbers[l] == target {
return []int{l + 1, r + 1}
}
}
return []int{} // impossible
}
var _ = twoSum