Loading [MathJax]/jax/output/SVG/jax.js

Районная олимпиада 2019-2020 информатика


Задача E. Второй максимум

Ограничение по времени:
1 секунда
Ограничение по памяти:
256 мегабайт

Вам дана последовательность a1,a2...an длины n. Для каждого k от 2 до n найдите значение второго по величине элемента среди первых k элементов последовательности a.
Формат входного файла
В первой строке одно целое число n (1<=n<=105). Во второй строке n целых чисел a1,a2...an (1<=ai<=109).
Формат выходного файла
Выведите ответ для каждого k от 2 до n.
Система оценки
Данная задача содержит 10 тестов. Каждый тест оценивается в 10 баллов:
  1. 1<=n<=100. Тесты с номерами 1-3.
  2. 1<=n<=5000. Тесты с номерами 4-6.
  3. 1<=n<=105. Тесты с номерами 7-10.
Пример:
Вход
7
1 2 3 3 7 5 6
Ответ
1 2 3 3 5 6
Замечание
В примере:
  1. k=2. Первые k чисел 1_,2. Ответ 1
  2. k=3. Первые k чисел 1,2_,3. Ответ 2
  3. k=4. Первые k чисел 1,2,3_,3. Ответ 3
  4. k=5. Первые k чисел 1,2,3_,3,7. Ответ 3
  5. k=6. Первые k чисел 1,2,3,3,7,5_. Ответ 5
  6. k=7. Первые k чисел 1,2,3,3,7,5,6_. Ответ 6
( Aibar Kuanyshbay )
посмотреть в олимпиаде

Комментарий/решение:

пред. Правка 2   1
5 года 3 месяца назад #

пред. Правка 2   -1
5 года 3 месяца назад #

  1
5 года 3 месяца назад #

показать/скрыть код

C++

пред. Правка 2   1
5 года 1 месяца назад #

показать/скрыть код

C++

пред. Правка 2   0
3 года 2 месяца назад #

DELETED

пред. Правка 2   0
4 года 5 месяца назад #

показать/скрыть код

C++

  0
4 года 5 месяца назад #

показать/скрыть код

C++

  13
4 года 4 месяца назад #

показать/скрыть код

C++

  0
4 года 4 месяца назад #

показать/скрыть код

C++

  1
3 года 1 месяца назад #

показать/скрыть код

C++

  0
1 года 3 месяца назад #

n = int(input()) # Ввод числа n

array = list(map(int, input().split())) # Ввод списка через запятую

for k in range(2, n+1): # проход по всем отрезкам от 1 до n

temporary = array[:k]# временный список равен срезу последних k эл-ов

temporary.remove(max(temporary)) # Убираем максимальный эл-нт из списка

print(max(temporary), end=" ") # Вывод второго максимального эл-а, в строку через пробел