C - 菱型カウント Editorial by ngtkana


\(h \times w\) の二次元ブーリアン配列 \(a\)

\[ a _ { i, j } =\begin{cases} \mathtt { true } & ( s _ { i, j } = \mathtt { o } ) \\ \mathtt { false } & ( s _ { i, j } = \mathtt { x } ) \\ \end{cases} \]

で定義します。

\(i, j\) について同時に、\(a _ { i, j }\)

\[ a _ { i - 1, j } \ \land a _ { i + 1, j } \ \land a _ { i, j - 1 } \ \land a _ { i, j + 1 } \]

(ただし範囲外は \(\mathtt { false }\) とします。)に置き換えるという操作を \(K - 1\) 回行います。その後 \(a\)\(\mathtt { true }\) な要素の個数が答えです。

posted:
last update: