Определить количество чисел в наиболее длинной подпоследовательности из подряд идущих чисел
одного знака. (Сделать в C#)Ответы на вопрос
Ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
v : integer;
count, max : integer;
prev : integer;
begin
count := 0; max := 0;
repeat
v := ReadInteger;
if (count = 0) or (prev * v > 0) then inc(count)
else // знаки не совпадают
begin
if max < count then max := count;
count := 1;
end;
prev := v;
until v = 0;
print('max = ', max)
end.
Вот пример реализации в C# для определения количества чисел в наиболее длинной подпоследовательности из подряд идущих чисел одного знака:
csharpusing System;
class Program
{
static void Main(string[] args)
{
int[] numbers = { -1, 2, 3, -4, -5, -6, 7, -8, -9, 10, 11, 12 };
int longestSequenceLength = GetLongestSequenceLength(numbers);
Console.WriteLine("Количество чисел в наиболее длинной подпоследовательности: " + longestSequenceLength);
}
static int GetLongestSequenceLength(int[] numbers)
{
int maxLength = 0;
int currentLength = 0;
for (int i = 0; i < numbers.Length - 1; i++)
{
if (Math.Sign(numbers[i]) == Math.Sign(numbers[i + 1]))
{
currentLength++;
}
else
{
maxLength = Math.Max(maxLength, currentLength);
currentLength = 0;
}
}
return Math.Max(maxLength, currentLength) + 1; // +1 to include the last number in the sequence
}
}
В этом примере используется массив numbers, который содержит последовательность чисел. Функция GetLongestSequenceLength проходит по массиву и подсчитывает длину подпоследовательности из подряд идущих чисел одного знака. Затем возвращается наибольшая длина подпоследовательности плюс одно число (чтобы включить последнее число в подсчет). В приведенном примере результат будет 3, так как самая длинная подпоследовательность -3, -4, -5 содержит 3 числа.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili
