Ряд - 2
Вы решили задачу. Теперь можно сравнить подходы.
Направление обхода зависит от взаимного порядка границ.
Авторский разбор для локальной версии на основе условия задачи. Это не выгрузка чужих посылок и не официальное решение исходного сайта.
Ваше принятое решение
Рекомендуемое решение: Рекомендуемый подход
Конец range сдвигается на один шаг за b, чтобы b вошло в вывод.
a = int(input())
b = int(input())
step = 1 if a <= b else -1
for x in range(a, b + step, step):
print(x)
Время: O(|B−A|+1). Память: O(1).
Другой способ: Другой способ
Пока границы не совпали, приближаем a к b на единицу. Последнюю границу печатаем отдельно.
a = int(input())
b = int(input())
while a != b:
print(a)
a += 1 if a < b else -1
print(b)
Время: O(|B−A|+1). Память: O(1).
На что обратить внимание
- При A=B выводится одно число.
- При убывании шаг и сдвиг конечной границы отрицательны.
Рекомендация учитывает сложность и читаемость для этой задачи. Единственного самого быстрого решения для всех размеров входа и всех компьютеров может не быть.