Bombeとかいうゲームについての手記 その30
このnoteは私が淡々と頭の中を整理するために書くnoteです。
過度な期待はしないでください。
前回に引き続き最適化。
これはもうこれ以上の最適化はできないだろう。例えば!2は3マスなら0/1/3になるがそのパターンはゲーム上設定できないので……。
このルールは
こういうことになるはず。似たようなルールに、
こんなのがある。箒のルールさえあればほかは導出できる。ということは不要と言える。
マス数の指定がひどい。それでもまあまあ適用されていることを鑑みるに、最適化するとすごくすごそう。(語彙力)
χ/χ+3とχ+1/χ+2が重なっていた場合、まず言えるのはχ個は使われないということだろう。
あれ、これがあるならもういらないんじゃ……。
少なくとも2,1マスのパターンはすべてこれで正しく解けるだろう。いらないので削除。
また常に1/2が成り立つのでそっちは追加。
!1:2が0/2であり、0/2が2*なので、
こう。そしてこれは
こうなるので、このルールは意味ない。削除。
ピッタリ2個必要になるパターン。これだと
こういうのも必要になっちゃうよなぁ……。
いちばん重要なのはχ/χ+◯みたいなときにχ+1個以上の範囲と被っているときはその個数ではなく上の方で個数が確定するということでは。
あるみたいですね。
じゃあこれもいらないので削除。
0/2が2つの場合は0/2/3/4が正しいが、4の場合はa,cが2個、2個の場合はbが2個になる。この場合は0/3となる。これ以外にこのパターンは不可能だよな……。これはこのままでOK。
これはひどい。要は下段について0というのはありえないというところだろう。
こういうのはあるのでOK。
3ルールについてもいっぱいあるのでOK。網羅しているはず。
具体的にはこれが適用できるので、こっちで解けるはず。消す。
これは0/1である必要がない気がする。
そうだよなあ!これでもbが1個以下に確定するんだから合計はχ+1以外にないよなあ!
これと同じ気がする。削除。
どこかで見た形。まず前回も見た気がするが、
こうであるので、
こういう事になっている。χ=1の場合、反対側の上段左とセットで入らないといけないため、そこがない場合はクリアしていいということだろう。
χ=2のときは?
成り立つが、これは1-を経由して結局該当箇所には入らないからである。うーんこんなの最近見たな……。
前回やったこれでは。これのψ=0バージョンだ。じゃあこれもいらない。削除。
これもさっき見ませんでしたかねえ!
こうですよねえ!
そしてこうですねえ!χ=0のときのみ切り出しただけですねえ!削除!
改善できそうでできなさそうなちょっと改善できそうなルール。でもよく意味がわからない。
左上にしても右上にしても、どちらにしろ1個以上余る。右上は特にκ+1個以上余る。上段真ん中に1個入るとして、残りはκ個。これ以上の爆弾が下段右に確定する。
κ個以上が確定しているのだから、残りのマスは0もしくは1である。
よって残りの爆弾の個数も確定する。
これは最低何個入るかの話しかしてないので、以上・以下系で書き換え可能である。
まず少なくともこれが全く同様でより範囲の広いルールである。
あとは上段真ん中のマス数が可変にできないか検討すべきだろう。
もう一度同じように考えていく。ψ個のマスを想定したときに、下段右へ溢れる個数はκ-1個。少なくともκ-1個入る(κ=0のときは不可能)
κから見て、残りの爆弾は1個なので、下段左か下段最右に1個入るか、どちらも入らない。下段左に爆弾が入らないとき、上段左にχ個の爆弾が入り、(χ+1)+の条件は達成できる。下段左に爆弾が入るとき、上段左にχ-1個の爆弾が入り、(χ+1)+の条件は達成できる。(この場合のみχ=0は不可能。つまりχ=0のとき下段左に爆弾は入らない)
共有するセルが2個である場合も同様である。この場合ψの部分の爆弾の個数は+1しないと計算が合わない。この場合も同様にκの範囲へはκ-1個溢れる。よってやはり下段左と下段最右は0/1であり、その結果左の爆弾の個数は(χ+2)+となる。これは下段左に爆弾が入る場合、合計3個すでに爆弾が入るのでこれは成り立つ。しかし下段左に爆弾が入らない場合、上段真ん中に爆弾を確定させずとも成り立ってしまう場合が存在するからである。
つまりこういうことになる。結局◯-1個溢れる系であった。3ルールにはこのパターンがありがちなのだろうか。2ルールだと◯個溢れることはあっても◯-1個溢れることはほぼ無い。(その仮定をするとたいてい不可能になる為)3ルールだとそこら辺がありえてしまうのでこうなるのだろう。
CPUをまあまあいい勢いで食っていくがコスパだけで言うと、さらに明らかにできるセルが多くなっているので改善している。うーん、すばら。
そして簡単な盤面もやります。
なんでこれが解けてない?
こっちがあるのに……
こっちがないんですねえ。これはψ=0のときにでも使えるので。この盤面はこれで解決。
ここらへんがわかるらしいです。
1の関係性を見出したら解決します……?
なんか進んだので多分これは新しいルールなんだろう。考えよう。
3と4の内訳表はこの通り。
そのうえで上記のルールについて、4の内訳が22,31にしかならない。
cについて見ていくと、下段最右は0または1になり、aとの合計が常に1になる。うん。成り立つは成り立つ。これは汎用化できるのか……?
左と右上は連動して動く。右下の個数よりも小さい値を取る場合は微妙なところだが成り立つ。
右下も同様に連動して動くみたいだ。
それから下段左のマス目は不問。これはあくまで4の爆弾の内訳が左と右の爆弾の個数により制限されるという論理上の都合でそうなるのだろう。
左上の方だけ+1になっているのにも理由がある。そうでない場合はそもそもχ+ψの範囲以外に爆弾が入らないため。
下段左が0であればκで文字にできる。必要かな?必要、だよなあ……。
この場合は常に下段左がクリアできちゃうので成り立つだけであって実際にはここは0が理想だろう。差が1ならば成り立つがそれ以外では成り立たない。
これは下段左に逃げ道を作ってしまうから。なので下記2つとしておくのが丸いのでは。
とりあえず今回はこれまで。