func arrayNesting(nums []int) int { max := 0 visited := make([]bool, len(nums)) for _, i := range nums { if !visited[i] { cnt := 0 for { visited[i] = true cnt, i = cnt+1, nums[i] if visited[i] { break } } if max < cnt { max = cnt } } } return max }