mirror of
https://github.com/lWolvesl/leetcode.git
synced 2026-06-04 02:21:15 +08:00
26 lines
360 B
Go
26 lines
360 B
Go
package leetcode
|
|
|
|
func abs(x int) int {
|
|
if x < 0 {
|
|
return -x
|
|
}
|
|
return x
|
|
}
|
|
|
|
func closestTarget(words []string, target string, startIndex int) int {
|
|
ans := len(words)
|
|
n := len(words)
|
|
|
|
for i, word := range words {
|
|
if word == target {
|
|
dist := abs(i - startIndex)
|
|
ans = min(ans, min(dist, n-dist))
|
|
}
|
|
}
|
|
|
|
if ans < n {
|
|
return ans
|
|
}
|
|
return -1
|
|
}
|