第182話:時間と空間
~盤面整理~
さて、割りと揃ってきた。
後はもう何も考えずとも………終了。
前回のと比べるとあっけないほど簡単だったな。
さて次だ次。
~解析現場~
*うーむ、これ以上考えを進めていってもうまくいきそうにはないな。どうしたものか。*
*いっそのこと、取りあえず入力の取得だけでも実装してみるか。*
*正常に動いているか検証するのは面倒だが、組む分にはそこまで大変ではないからな。*
*それぞれの入力について、その時刻で二分探索を掛けて、*
*その時に……えーと、1657番に入力されているかどうかを確かめればよい。*
*少し効率は悪いが、二分探索の効率が良すぎるのでそこまで気にならない。*
*いや、逆のほうが書きやすいな。入力を受け取っている画面が1657番であるときを判定して、*
*1657番に入力されている時間を全部まとめて、それに合致する入力だけを抜き出す。*
*空間的には不利だが、時間的には微妙に有利。*
*よし、まずはこっちの方針で書いてみるか。*
~盤面整理~
えーとこれは。「直角」「斧」「刀」とでも取ればいいのか。
微妙に扱いづらい構造が右下方面に見えるが、まあなんということもないか。
Iが面倒な膜を張っているが、どちらかというと塊になっていないことを喜ぶべきだろう。
~解析現場~
*うーむ、こっちの方法はまずいな。*
*静的な入力だけを扱うならともかく、この記録は今現在も追加されていっているもの。*
*「1657番一覧」を作成してから処理をかけても、その作成と処理との間に僅かな時間差があるので、*
*最新の入力が10個ぐらい抜けてしまう。*
*やはりもう一方の手段を取ることにするか。*
*比較的実装も楽だし、空間的にも有利。*
*二分探索の効率の良さからして、時間的にもそこまで不利ではない。*
*順番に並んでいればもう少し効率を上げられるのだが、*
*なぜだか分からないがたまに入力順と記録順に差が生じることがあるし、やめておこう。*
*そもそも二分探索速いし。*
~盤面整理~
よし、左側は大体制圧し終わった。後はIの膜だ。
まずは膜に正面から当たって穴をあけ、そこから内部に入る。
微妙に「椅子」を思わせる構造があるので、それにも頼りながら取りあえず整理だ。
~解析現場~
*よし、あと少し。*
*時間も残りあまりないし、今のところは取りあえず急いで書いてしまおう。*
*括弧の位置や空白の入れ方などをこだわっている暇はない。まずは書くのだ。*