Лесенка
Вы решили задачу. Теперь можно сравнить подходы.
Каждая строка продолжает предыдущую одной цифрой.
Авторский разбор для локальной версии на основе условия задачи. Это не выгрузка чужих посылок и не официальное решение исходного сайта.
Ваше принятое решение
Рекомендуемое решение: Наращивание строки
На шаге i добавляем i; ограничение n≤9 гарантирует одну цифру.
n = int(input())
row = ''
for i in range(1, n + 1):
row += str(i)
print(row)
Время: O(n²), включая вывод. Память: O(n).
Другой способ: Вложенные циклы
Каждую ступень строим заново прямо в потоке вывода.
n = int(input())
for i in range(1, n + 1):
for j in range(1, i + 1):
print(j, end='')
print()
Время: O(n²). Память: O(1) дополнительной памяти.
На что обратить внимание
- Между цифрами нет пробелов, а после ступеньки нужен перевод строки.
Рекомендация учитывает сложность и читаемость для этой задачи. Единственного самого быстрого решения для всех размеров входа и всех компьютеров может не быть.