Подсчитать количество участков, которые образуют непрерывные последовательности чисел - C# (182289)

Узнай цену своей работы

Формулировка задачи:

Дан массив на 200 элементов случайных цифр в диапазоне от 0 до 100. Подсчитать количество участков, которые образуют непрерывные последовательности чисел с не уменьшающимися значениями

Решение задачи: «Подсчитать количество участков, которые образуют непрерывные последовательности чисел»

textual
Листинг программы
  1. //Rextester.Program.Main is the entry point for your code. Don't change it.
  2. //Compiler version 4.0.30319.17929 for Microsoft (R) .NET Framework 4.5
  3.  
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text.RegularExpressions;
  8.  
  9. namespace Rextester
  10. {
  11.     public class Program
  12.     {
  13.         public static void Main(string[] args)
  14.         {
  15.             var rand = new Random();
  16.             var arr = new int[200];
  17.             var count = 0;
  18.            
  19.             for (var i = 0; i < arr.Length; i++ )
  20.                 arr[i] = rand.Next(0, 101);
  21.            
  22.             var stack = new Stack<int>();
  23.             stack.Push(arr[0]);
  24.            
  25.             for (var i = 1; i < arr.Length; i++) {
  26.                 var tmp = stack.Pop();
  27.                
  28.                 if (tmp < arr[i]) {
  29.                     stack.Push(tmp);
  30.                 } else if (stack.Count() > 0) {
  31.                     count++;
  32.                     stack.Clear();
  33.                 }
  34.                
  35.                 stack.Push(arr[i]);
  36.             }
  37.            
  38.             if (stack.Count() > 1)
  39.                 count++;
  40.            
  41.             Console.WriteLine(string.Format("Кол-во последовательностей: {0}", count));
  42.         }
  43.     }
  44. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.846 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы