>при попытке открыть уже открытую дверь происходит сбой пиздос. разработчики, которых мы зслужили разыскивается анон по задачке на рекуррентные формулы пару недель назад анон создал тред, где просил помочь решить задачку про дверь, на которую подаются сигналы. в треде появился анон, который решил задачку через рекуррентные формулы, сведя вычисления в одну функцию изящными размышлениями. можешь повторить свои рассуждения? я как не пытался, вечно спотыкаюсь. сама задачка по памяти: есть дверь в закрытом начальном состоянии. на нее можно подать 3 вида сигналов: открыть, закрыть, ничего не делать. на открытую дверь нельзя еще раз подать сигнал "открыть", иначе произойдет ошибка. нужно найти количество комбинаций для цепочки сигналов длиной n (до 50). твой ответ после рассуждений был f(n + 1) = 3 x f(n) - f(n - 1). помню, что ты вводил первым шагом функцию, которая выдает количество комбинаций то ли открытой, то ли закрытой в итоге двери. сам я ее решил через 2 функции, которые мне было лень сводить в одну. сейчас я их формально свел в одну, но у тебя намного более лаконично и кратко получилось. мой вариант: 0 - открыть 1 - закрыть 2 - ничего не делать c(n) - количество комбинаций с закрытой в итоге дверью o(n) - количество комбинаций с открытой в итоге дверью тогда f(n) = c(n) + o(n) - нужный нам результат для n команд чтобы найти c(n + 1) нужно к c(n) добавить две команды 1 и 2 и к o(n) одну команду 1 - итого c(n + 1) = 2 x c(n) + o(n) o(n + 1) = c(n) + o(n) f(n + 1) = c(n + 1) + o(n + 1) = 3 x c(n) + 2 x o(n) = 3 x c(n) + 2 x o(n) + o(n) - o(n) = 3 x c(n) + 3 x o(n) - o(n) = 3 x f(n) - o(n) если o(n + 1) = c(n) + o(n) и f(n) = c(n) + o(n), то o(n + 1) = f(n) или o(n) = f(n - 1), тогда f(n + 1) = 3 x f(n) - o(n) = 3 x f(n) - f(n - 1) как бы все здорово, но у тебя буквально в два предложения вышло, но я не могу восстановить, каких именно.