Array Nesting LeetCode solution in C++
1class Solution {2public:3int dfs(vector<int> &nums, int ind, int arr[], int res) {4if (arr[ind] == 1) return res;5res++;6arr[ind] = 1;7return dfs(nums, nums[ind], arr, res);8}9int arrayNesting(vector<int> &nums) {10int arr[nums.size()], ans = 0;11for (int i = 0; i < nums.size(); i++) arr[i] = 0;12for (int i = 0; i < nums.size(); i++) {13int res = dfs(nums, i, arr, 0);14ans = max(res, ans);15}16return ans;17}18};