From 56ac01e25ca89fb24e7b3f1dad806506ede32cc6 Mon Sep 17 00:00:00 2001 From: Andrey Golikov Date: Tue, 17 Feb 2026 17:49:42 +0600 Subject: [PATCH] feat: add task 3 --- task3/main.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 task3/main.py diff --git a/task3/main.py b/task3/main.py new file mode 100644 index 0000000..3533edc --- /dev/null +++ b/task3/main.py @@ -0,0 +1,25 @@ +from collections import deque +from typing import Iterable, Reversible + + +def read_numbers() -> list[int]: + return list(map(int, input("A=").split())) + +def get_modified_sequence(numbers: Reversible[int]) -> Iterable[int]: + stack: deque[int] = deque() + result: deque[int] = deque() + for number in reversed(numbers): + while stack: + if stack[-1] >= number: + result.appendleft(stack[-1]) + break + stack.pop() + else: + result.appendleft(0) + stack.append(number) + return result + +def print_sequence(sequence: Iterable[int]) -> None: + print(f"A={' '.join(map(str, sequence))}") + +print_sequence(get_modified_sequence(read_numbers()))