В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
anchobaby
anchobaby
13.07.2021 01:37 •  Информатика

Наибольшая возрастающая подпоследовательность У вас есть массив чисел длиною "N". Нужно найти следующую длину наибольшей возрастающей подпоследовательности. Ниже приведены несколько примеров

[1,3,5,4,7] => 3

[2,2,2,2,2] => 1

Входные данные:

(1 ≤ n ≤ 10000), где каждый элемент в массиве в промежутке (-10000 ≤ a[i] ≤ 10000)

Выходные данные:

Нужно найти следующую длину наибольшей возрастающей подпоследовательности.

Пример 1
Ввод:
8
86 62 91 22 59 71 46 100

Вывод:
3
Пример 2
Ввод:
10
8 96 73 55 44 95 58 4 52 2

Вывод:
2
Пример 3
Ввод:
8
33 65 71 52 98 5 46 48

Вывод:
3

Показать ответ
Ответ:
lera24012002
lera24012002
07.11.2020 19:56

Var

День,Месяц:byte;

Begin

Write('№ дня = ');ReadLn(День);

Var C:=365-День;

Write('№ месяца = ');ReadLn(Месяц);

Case Месяц of

2:C:=C-31;

3:C:=C-59;

4:C:=C-90;

5:C:=C-120;

6:C:=C-151;

7:C:=C-181;

8:C:=C-212;

9:C:=C-243;

10:C:=C-273;

11:C:=C-304;

12:C:=C-334

End;

if (C mod 100>10)and(C mod 100<20) then Write('До нового года осталось ',C,' дней')

else

Case C mod 10 of

1:Write('До нового года остался ',C,' день');

2..4:Write('До нового года осталось ',C,' дня');

0,5..9:Write('До нового года осталось ',C,' дней')

End

End

Объяснение:

0,0(0 оценок)
Ответ:
Шынарай111
Шынарай111
28.07.2020 05:53
А на каком языке сделать? 

program test; 

var 

    n, m: integer; 
    max: integer; 
    count: integer; 
    number: integer; 
    i: integer; 

function GetDividersCount(number: integer): integer; 
var 

    limit: integer; 
    count: integer; 
    i: integer; 

begin 

    limit := number div 2; 
    count := 0; 

    for i := 1 to limit do 

        if number mod i = 0 then 

            count := count + 1; 

    result := count; 

end; 

begin 

    write('Enter range: '); 
    read(n, m); 

    max := 0; 

    for i := n to m do 
    begin 

        count := GetDividersCount(i); 

        if max < count then 
        begin 

            max := count; 
            number := i; 

        end; 

    end; 

    writeln('Result: ', number); 

end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота