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

решить Задача №1705. Долины и холмы
Рассмотрим числовую последовательность a1, ..., aN. Мы будем называть подстроку ai, …, aj, ..., ak (1 ≤ i < j < k ≤ N) исходной последовательности холмом, если at < at+1 для любого i ≤ t < j и at > a t+1 для любого j ≤ t < k. В таком случае вершиной холма считается min{j − i, k − j} . Аналогично, мы будем называть подстроку долиной, если at > at+1 для любого i ≤ t < j и at < at+1 для любого j ≤ t < k. Тогда глубиной долины будет считаться min{j-i, k-j}. Вычислите высоту самого высокого холма и глубину самой глубокой долины в данной последовательности.

Входные данные
В первой строке входного файла находится число T (1 ≤ T ≤ 100000) — количество тестовых блоков. Далее располагаются тестовые блоки, занимающие по 2 строки. Первая из двух строк содержит целое число N (1 ≤ N ≤ 1000000), во второй строке находятся члены последовательности, разделенные пробелом. Сумма значений N всех тестовых блоков в файле не превышает 100 000. Абсолютные значения членов последовательности не превышают 1 000 000.

Выходные данные
Выходной файл должен состоять из T строк, в каждой строке по 2 числа: высота высочайшего холма и глубина самой глубокой долины. Если в тестовом блоке не существует долин или холмов, выведите число 0.

Примеры
входные данные
2
10
4 4 1 6 3 2 1 2 5 7
10
2 3 4 5 6 7 8 9 10 9
выходные данные
1 3
1 0
На питоне

Показать ответ
Ответ:
89622356703
89622356703
06.12.2022 22:48
//Pascal ABC.NET v3.0 сборка 1111

Const
 s=5;

Var
 ar:array[1..s] of integer;
 n,m,i:integer;
begin
 writeln('N');
 readln(n);
 writeln('M');
 readln(m);
 writeln('Array:');
 for i:=1 to s do
   readln(ar[i]);
 writeln('First array:');
 for i:=1 to s do
  begin
   write(ar[i]:4);
   if ar[i] div n<>0 then ar[i]:=ar[i]+m;
  end;
 writeln;
 writeln('Final array:');
  for i:=1 to s do
   write(ar[i]:4);
end. 

Пример ввода:
3
3
1
2
3
4
5
Пример вывода:
First array:
   1   2   3   4   5
Final array:
   1   2   6   7   8

//Блок-схема во вложении
Ввести двумерный массив a. все элементы, которые при целочисленном делении на n ненулевое значение,
0,0(0 оценок)
Ответ:
kaskader2475
kaskader2475
20.09.2020 10:57
1. 2 Массивы объявляются тем же оператором, что и обычные переменные
2. Не корректный вопрос: индекс - это обращения к определенному элементу массива, а у самого массива индекса нет. В вариантах ответа ничего похожего на это нет.
3. 4 Массивы заполняются теми же операторами, что и обычные переменные
4. 1 Есть такой ввода в бейсике - конструкция READ DATA
5. 1 Выведется четвертый элемент массива, т.к. нумерация идет с нуля, и первый имеет номер 0, второй - 1, третий - 2, а четвертый - номер 3, который и запрашивается в выражении А(3)
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота