A問題
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
A:できるだけ2e10の区間を作ろうとする。終盤で2e10の区間が1個でも残ってれば自分だけ選択肢があるという状況が作れるのでまぁ勝てる。
2019-06-09 02:17:06B問題
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
B:まずピラミッドの頂上は最大値にするのが最善。高さをp[i]に揃えるものがどういうものかに注目する。iの左にあってp[i]以上かつ最も右にあるものをp[l]、同様に右にあって〜をp[r]とする。左端を l 以下、右端をi~rの間にした時のみl~iの間にあるものの高さをp[i]に揃えることになる。
2019-06-09 01:44:32C問題
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
C:辺に三叉路が2個以下しかなければ大体よくて、構築は三叉路から壁を辿って、十字路に来たら好きな方に曲がる。ただしすでに連結なところを連結にするようには曲がらないようにする。(三叉路がない場合は適当なところからスタート)(辺を全部辿れなかったら-1)
2019-06-09 01:35:06
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
Cもっとシンプルにできたのか。 AAA ABA AAB とか BAA ABA AAB とかでBを孤立させそうと思ったけど、上はすでに連結だからAを繋がないし、下はそもそも不可能なのか。
2019-06-09 01:46:44
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
おまけ(サンプルとして使ったやつ) 1 7 7 AAABBBB ABBAAAB ABABBAB ABBABAB ABABABA ABBABBA AAAAAAA pic.twitter.com/I7iAm3NgSU
2019-06-09 02:24:03
拡大
反省会
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
あー、Aが永遠にバグる原因がわかった。wを読み込んでない・・・(リッチなinteractive_toolが欲しかった)(タイムアウトを設定する改造だけして満足してた)
2019-06-09 02:15:45
ꑄ꒖ꐇꌅꏂ🐾
@snuke_
いや、最初のpが300になってるのは見てて、それを「すごい乱数シード見つけたなぁ」くらいの感想でスルーしてしまったのが頭悪すぎるんだよな・・・
2019-06-09 02:42:34おまけ(開始直前のツイート)