paiza×Qiita記事投稿キャンペーン「プログラミング問題をやってみて書いたコードを投稿しよう!」に参加してみた。 問題はハノイの塔 残念ながら、問題通りのアウトプットが作れませんでした。配列の状態を書き換えるのができないので、書き換えずに常に3本の杭の状態を返す関数を作ればよいのだと思うのですが、難しい。。。 =>何とか解くことができましたので、完成版はこちら。 使い方はこんな感じ。 円盤3枚を初期値として、4回まで動かすとしたら、=HANOI(3,4)とするイメージ。 Excel LAMBDA関数版「ハノイの塔」のコード HANOI = LAMBDA(_n, _t, LET( // Zコンビネータ。無名関数で再帰を実現するヘルパー関数 Z, LAMBDA(_functionTemplate, LET( _applyFunction, LAMBDA(_recursiveFunctio