В интервью мне была задана следующая проблема:
Учитывая лестницу с N шагами, вы можете подниматься с 1 или 2 шагами каждый раз. Выведите весь возможный путь, который вы делаете снизу вверх.
Например:
N = 3
Output :
1 1 1
1 2
2 1
При опросе я просто сказал, что использую динамическое программирование.
S (n) = S (n-1) +1 или S (n) = S (n-1) +2
Однако во время интервью я не написал для этого очень хороший код. Как бы вы определили решение этой проблемы?
Спасибо, действительно!