Второе по величине время круга
Условие
На тренировке по картингу секретарь записывает времена кругов (в миллисекундах) подряд: один круг — одно число. В конце он хочет узнать «второе по величине» время.
Важно: если самое большое время встретилось несколько раз, то второе по величине время тоже равно этому максимуму. Например, для 5, 5, 3 ответ — 5.
В этой задаче нельзя использовать массивы и списки — только переменные. Числа читаются потоком до сигнала конца.
Формат ввода
Вводятся целые числа x (1 ≤ x ≤ 10^9), по одному в строке. Последним вводится число 0, оно означает конец ввода и не является временем круга.
Формат вывода
Выведите одно число — второе по величине время круга с учётом повторов. Если в потоке было меньше двух чисел (0 или 1 время), выведите 0.
Ограничения
- 1 ≤ x ≤ 10^9
- Ввод заканчивается числом 0 (0 не входит в поток)
- Решение должно работать за один проход и O(1) памяти (без списков/массивов)
Пример
Ввод:
12
7
12
3
0
Вывод:
12Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами
- Родителям: подготовка бесплатно — сколько стоит репетитор, что даёт бесплатный маршрут и как понять, что ребёнок занимается