No.2641 draw X
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 53
作問者 : ponjuice / テスター : noya2
タグ : / 解いたユーザー数 53
作問者 : ponjuice / テスター : noya2
問題文最終更新日: 2024-02-19 00:46:49
問題文
縦 $H$ マス、横 $W$ マスのグリッド状の絵 $S$ があり、上から $i$ 行目・左から $j$ 列目のマスを $(i,j)$ とします。
マス $(i,j)$ は $S_{i,j}=$#
のとき黒色に塗られていて、 $S_{i,j}=$.
のとき色は塗られていません。
あなたは、縦 $H$ マス、横 $W$ マスのグリッド状の何も塗られていないキャンバス $T$ に、X
の形をした図形を好きな回数描くことで同じ絵を描きたいです。つまり、全ての $i,j$ に対して次の条件が成り立つようにしたいです。
- $S_{i,j}=$
#
のとき $T$ のマス $(i,j)$ は黒く塗られている。 - $S_{i,j}=$
.
のとき $T$ のマス $(i,j)$ は何も塗られていない。
あなたはこの絵を描くことができるか判定してください。
X
の形を描くとは以下のことを言います。
- 中心となるマス $(x,y)$ とその大きさとなる整数 $r$ を決める。$(\ 2 \leq x \leq H-1,\ 2 \leq y \leq W-1, 1 \leq r \leq \min(x-1,y-1,H-x,W-y))$
- $-r \leq k \leq r$ を満たす全ての整数$k$について、$(x+k, y+k)$ を黒く塗る。
- $-r \leq k \leq r$ を満たす全ての整数$k$について、$(x+k, y-k)$ を黒く塗る。
制約
- $H,W$ は整数
- $1 \leq H, W$
- $1 \leq H \times W \leq 10^6$
- $S_{i,j}$ は
#
または.
入力
$H\ W$ $S_{1,1}S_{1,2}\cdots S_{1,W}$ $\vdots$ $S_{H,1}S_{H,2}\cdots S_{H,W}$
出力
もし描くことができるのならば Yes
を、そうでなければ No
を出力してください
サンプル
サンプル1
入力
5 5 #...# .#.#. ..#.# .#.#. #.#.#
出力
Yes
$(3,3)$ に大きさ $2$ の X
を描き、$(4,4)$ に大きさ $1$ の X
を描くと、この絵を描くことができます
サンプル2
入力
3 3 #.# .#. ###
出力
No
どのようにX
を描いたとしても $(3,2)$ のマスを塗ることができません
サンプル3
入力
10 12 ###.......#. .#.#.....#.. ..#.#...#... ...#.#.#.... ....#.#..... .....#.#.... ....#.#.#... ...#...#.#.. ..#.....#.#. .#.......###
出力
No
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。