BorislavBorisov

Редици.06.02.Най-дългата нараств. подредица от съседни числа

Oct 31st, 2015
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.12 KB | None | 0 0
  1. using System;
  2. class LongestDecrisingSubs
  3. {
  4.     static void Main()
  5.     {
  6.         int[] myArray = { 1, 2, 3, 1, 24, 1, 123, 345, 345 };
  7.         FindLongestSubsequence(myArray);
  8.     }
  9.  
  10.     static void FindLongestSubsequence(int[] myArray)
  11.     {
  12.         int len = 1, bestLen = 0, endIndex = 0;
  13.  
  14.         for (int i = 0; i < myArray.Length - 1; i++)
  15.         {
  16.             if(myArray[i] < myArray[i + 1])//ако в ифа е равно дава и равните числа в потредицата
  17.             {
  18.                 len++;
  19.                 if(len >= bestLen)//тук с равно дава най-дясната
  20.                 {
  21.                     endIndex = i + 1;// плюс едно е края не най-дългата потредица
  22.                     bestLen = len;
  23.                 }
  24.             }
  25.             else
  26.             {
  27.                 len = 1;
  28.             }
  29.         }
  30.         Console.Write("Longest subsequence: ");
  31.         for (int i = endIndex - bestLen + 1; i <= endIndex; i++)
  32.         {
  33.             Console.Write(myArray[i] + " ");
  34.         }
  35.         Console.WriteLine();
  36.     }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment