lc-go/solutions/1/q167/solution.go

25 lines
506 B
Go

// Package q167 implements a solution for https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/
package q167
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