Krum_50

Untitled

Oct 18th, 2020
888
324 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Kamino_Factory
  8. {
  9.     class Program
  10.     {
  11.         private static int numberOfElements;
  12.         static void Main(string[] args)
  13.         {
  14.             int numberOfЕlements = int.Parse(Console.ReadLine());          
  15.             int countOfBestSequence = 0;
  16.             int countOfSequenceOnes=0;            
  17.             int maxSum = 0;
  18.             int bestRigthIndex = 0;
  19.             int maxTotalSum = 0;            
  20.             int totalSum = 0;
  21.             int currentMaxSum = 0;
  22.             int[] outputDate = new int[numberOfElements];                      
  23.             string line = Console.ReadLine();
  24.             while (line != "Clone them!")
  25.             {
  26.                 int[] inputline = line.Split(new char[] { '!' }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray();
  27.                 totalSum = inputline.Sum();                
  28.                 for (int i = 0; i < numberOfЕlements; i++)
  29.                 {
  30.                     if (inputline[i] == 1)
  31.                     {
  32.                         countOfSequenceOnes++;
  33.                         if (countOfSequenceOnes >currentMaxSum)
  34.                         {
  35.                             currentMaxSum = countOfSequenceOnes;
  36.                             countOfBestSequence=1;
  37.                             bestRigthIndex = i;
  38.                             if(currentMaxSum>maxSum)
  39.                             {
  40.                                 maxSum = currentMaxSum;
  41.                                 outputDate = inputline;
  42.                             }                            
  43.                             continue;
  44.                         }
  45.                         if(countOfSequenceOnes==maxSum)
  46.                         {
  47.                             countOfBestSequence++;
  48.                             if (i<bestRigthIndex)
  49.                             {
  50.                                 outputDate = inputline;
  51.                                 bestRigthIndex = i;
  52.                             }
  53.                             if(i==bestRigthIndex)
  54.                             {
  55.                                 countOfBestSequence = 1;
  56.                                 if(totalSum>maxTotalSum)
  57.                                 {
  58.                                     maxTotalSum = totalSum;
  59.                                     outputDate = inputline;
  60.                                 }
  61.                             }
  62.                         }
  63.                     }
  64.                     else
  65.                     {
  66.                         countOfSequenceOnes = 0;
  67.                         currentMaxSum = 0;
  68.                     }
  69.                 }
  70.                 if (currentMaxSum > maxSum)
  71.                 {
  72.                     maxSum = currentMaxSum;
  73.                     currentMaxSum = 0;
  74.                 }
  75.                 else
  76.                 {
  77.                     currentMaxSum = 0;
  78.                 }
  79.                
  80.                 line = Console.ReadLine();                
  81.             }
  82.             {
  83.                 Console.WriteLine($"Best DNA sample {countOfBestSequence} with sum: {maxSum}.");
  84.                 Console.WriteLine(String.Join(" ",outputDate));
  85.             }          
  86.  
  87.         }
  88.     }
  89. }
  90.  
RAW Paste Data