Подсчитать количество участков, которые образуют непрерывные последовательности чисел - C# (182289)
Формулировка задачи:
Дан массив на 200 элементов случайных цифр в диапазоне от 0 до 100.
Подсчитать количество участков, которые образуют непрерывные последовательности чисел с не уменьшающимися значениями
Решение задачи: «Подсчитать количество участков, которые образуют непрерывные последовательности чисел»
textual
Листинг программы
- //Rextester.Program.Main is the entry point for your code. Don't change it.
- //Compiler version 4.0.30319.17929 for Microsoft (R) .NET Framework 4.5
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text.RegularExpressions;
- namespace Rextester
- {
- public class Program
- {
- public static void Main(string[] args)
- {
- var rand = new Random();
- var arr = new int[200];
- var count = 0;
- for (var i = 0; i < arr.Length; i++ )
- arr[i] = rand.Next(0, 101);
- var stack = new Stack<int>();
- stack.Push(arr[0]);
- for (var i = 1; i < arr.Length; i++) {
- var tmp = stack.Pop();
- if (tmp < arr[i]) {
- stack.Push(tmp);
- } else if (stack.Count() > 0) {
- count++;
- stack.Clear();
- }
- stack.Push(arr[i]);
- }
- if (stack.Count() > 1)
- count++;
- Console.WriteLine(string.Format("Кол-во последовательностей: {0}", count));
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д