迷宮には壁があり人が存在していることもある
デーモンは召喚後、壁を越えることはできないが瞬時にあらゆる経路を移動する
デーモンは迷宮の左上に召喚される
遭遇した人は柱化する
柱化した人は何柱?
(そんな話ではないけど、夜ストレンジャーシングスをみて、深夜のコーディングでハイテンションになってます)
深夜全経路探索をHaskellというデーモンのような言語で作ってみる
まあドツボにはまって今時刻は深夜4時半
Haskellという世界では統一帝国が全てを従えており、
世界は固定であり、作り変えてはならない
世界を変えたければ、新しい世界に転生させる瞬間に変更させなければならない
大なり小なりの世界を次々と作っていかなければならない
簡単な説明と後世の人に記録を残す
9 せん断された世界を再構築して答えの世界を呼び出す
13 最初の人を数え デーモンを徘徊し終えた世界の人を数え 柱化した人を答える
17 デーモンが空間を満たすまで分身させる 分身後最初のデーモンは柱となる
20 デーモンを上下左右柱のない空間に分身させる
汎用的に使えそうなもの
24 文字列の中から指定1文字の数を数える
28 文字列の指定位置を指定1文字に置き換える
30 文字列の中から指定1文字の最初の位置を返す(なければ-1)
TIPS
作った世界に何かが足りないと最悪、最初の世界から作り変えないといけない
18 -1を比較する際はカッコでくくらないといけない(よく思い出せた)
29 文字列の結合は++ Char型を結合したいときは [Char]
22,27 文字列、配列の先頭を1つ取る時はdrop 1 s
文字、配列の指定位置は !!n
そして夜が明けた