• 565. Array Nesting


    A zero-indexed array A consisting of N different integers is given. The array contains all integers in the range [0, N - 1].

    Sets S[K] for 0 <= K < N are defined as follows:

    S[K] = { A[K], A[A[K]], A[A[A[K]]], ... }.

    Sets S[K] are finite for each K and should NOT contain duplicates.

    Write a function that given an array A consisting of N integers, return the size of the largest set S[K] for this array.

    Example 1:

    Input: A = [5,4,0,3,1,6,2]
    Output: 4
    Explanation: 
    A[0] = 5, A[1] = 4, A[2] = 0, A[3] = 3, A[4] = 1, A[5] = 6, A[6] = 2.
    One of the longest S[K]: S[0] = {A[0], A[5], A[6], A[2]} = {5, 6, 2, 0}

    Note:

    1. N is an integer within the range [1, 20,000].
    2. The elements of A are all distinct.
    3. Each element of array A is an integer within the range [0, N-1].
       1 class Solution {
       2 public:
       3     int arrayNesting(vector<int>& nums) {
       4             int len = nums.size();
       5         int N = len;
       6         int max = 0;
       7         int result = 0;
       8         for (int i = 0;i < len;i++)
       9         {
      10             if (nums[i] == N)
      11             {
      12                 continue;
      13             }
      14             else
      15             {
      16                 int k = i;
      17                 while (k < len&&nums[k] != N)
      18                 {
      19                     max++;
      20                     int k1 =nums[k];
      21                     nums[k] = N;
      22                     k = k1;
      23                 }
      24             }
      25             if (max > result)
      26             {
      27                 result = max;
      28             
      29             }
      30                 max = 0;
      31         }
      32         return result;
      33     }
      34 };
  • 相关阅读:
    Python内置函数(67)——zip
    Python内置函数(66)——vars
    Python内置函数(65)——type
    Python内置函数(64)——tuple
    Python内置函数(63)——super
    Python内置函数(62)——sum
    Python内置函数(61)——str
    Python内置函数(60)——staticmethod
    Hadoop初体验(续)--YARN
    Hadoop初体验
  • 原文地址:https://www.cnblogs.com/wujufengyun/p/7465822.html
Copyright © 2020-2023  润新知