BorislavBorisov

Редици.01.02.Най-дългата еднаква поредица в string

Nov 1st, 2015
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.03 KB | None | 0 0
  1. using System;
  2. class LongestEqualSubsequence
  3. {
  4.     static void Main()
  5.     {
  6.         string str = "JJsaaa";
  7.         FindLongestEqualSubs(str);
  8.     }
  9.  
  10.     static void FindLongestEqualSubs(string str)
  11.     {
  12.         int len = 1, bestLen = 0, endIndex = 0;
  13.        
  14.         for (int i = 0; i < str.Length - 1; i++)
  15.         {
  16.             if (str[i] == str[i + 1])
  17.             {
  18.                 len++;
  19.                 if (bestLen < len)
  20.                 {
  21.                     bestLen = len;
  22.                     endIndex = i + 1;//тук е края на поредицата, и е + 1, защото влизаме при това завъртане
  23.                 }
  24.             }
  25.             else
  26.             {
  27.                 len = 1;
  28.             }
  29.         }
  30.        
  31.         Console.WriteLine("Appearance: " + bestLen);
  32.         Console.Write("Subsequence: ");
  33.  
  34.         for (int i = endIndex - bestLen + 1; i <= endIndex; i++)
  35.         {
  36.             Console.Write(str[i]);
  37.         }
  38.         Console.WriteLine();
  39.     }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment