Больше предыдущего
Вы решили задачу. Теперь можно сравнить подходы.
Сравниваем каждый элемент с непосредственным предшественником.
Авторский разбор для локальной версии на основе условия задачи. Это не выгрузка чужих посылок и не официальное решение исходного сайта.
Ваше принятое решение
Рекомендуемое решение: Обход соседних индексов
Начинаем с индекса 1, потому что у нулевого элемента предшественника нет.
a = list(map(int, input().split()))
for i in range(1, len(a)):
if a[i] > a[i - 1]:
print(a[i], end=' ')
Время: O(n). Память: O(n) для входного списка.
Другой способ: Запоминание предыдущего значения
Поддерживаем одну переменную для предыдущего значения. Токены input().split() всё ещё занимают линейную память.
values = iter(map(int, input().split()))
previous = next(values, None)
for current in values:
if current > previous:
print(current, end=' ')
previous = current
Время: O(n). Память: O(n) для входных токенов; O(1) дополнительных чисел.
На что обратить внимание
- Сравнение строгое: равные элементы не подходят.
- Сравнивать нужно с соседом, а не с последним напечатанным элементом.
Рекомендация учитывает сложность и читаемость для этой задачи. Единственного самого быстрого решения для всех размеров входа и всех компьютеров может не быть.