Найти количество участков массива, на которых его элементы монотонно убывают - C#
Формулировка задачи:
Дано целое число N. Задать N элементов одномерного массива. Найти количество
участков, на которых его элементы монотонно убывают.
Решение задачи: «Найти количество участков массива, на которых его элементы монотонно убывают»
textual
Листинг программы
- using System;
- using System.Linq;
- class Program
- {
- static void Main()
- {
- int n = Int32.Parse(Console.ReadLine());
- int[] arr = Enumerable.Repeat(new Random(), n).Select(r => r.Next(100)).ToArray();
- Console.WriteLine(String.Join(", ", arr));
- int state = 0;
- int count = 0;
- for (int i = 1; i < arr.Length; i++)
- {
- bool descending = arr[i] < arr[i - 1];
- switch (state)
- {
- case 0:
- if (descending)
- {
- state = 1;
- count++;
- }
- break;
- case 1:
- state = descending ? 2 : 0;
- break;
- default:
- if (!descending) state = 0;
- break;
- }
- }
- Console.WriteLine(count);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д