
function arrayNesting(nums: number[]): number {
let max = 0
const visited = new Set<number>()
for(let i = 0; i < nums.length; i++) {
let idx = i
let nest = 0
while(!visited.has(idx)) {
visited.add(idx)
idx = nums[idx]
nest++
}
max = Math.max(max, nest)
}
return max
};