No.1949 足し算するだけのパズルゲーム(2)
タグ : / 解いたユーザー数 120
作問者 : H20 / テスター : 蜜蜂 naskya
問題文
DHMOさんは、パズルゲームでコンティニューした際に流れるまた別のパズルゲームの広告が気になったので遊ぶことにしました。
パズルゲームは縦 $H$ 行横 $W$ 列のマス目の中でプレイヤーを動かすゲームです。マスの上から $i$ 行目、左から$j$ 列目のマスを$(i,j)$と呼ぶことにします。($1 \le i \le H$ かつ $1 \le j \le W$) を満たさないマスは存在しません。
プレイヤーははじめ $(Y,X)$ にいて、攻撃力は$A_{Y,X}$です。
$(Y,X)$ 以外のマスにはエネミーが存在し、$(i,j)$ にいるエネミーの攻撃力は $A_{i,j}$です。
全てのエネミーに勝利するとゲームクリアとなります。
プレイヤーは $(i,j)$ にいるとき、$(i+1,j), (i,j+1), (i-1,j), (i,j-1)$ のうち存在するいずれかのマスに移動できます。
移動後のマスに存在するエネミーと戦闘を行います。
プレイヤーの攻撃力がエネミーの攻撃力より高い場合、プレイヤーはエネミーに勝利し、エネミーの攻撃力分プレイヤーの攻撃力が増加します。
攻撃力がエネミー以下であれば敗北しゲームオーバーです。
同じマスを何度も通ってもよいですが、一度倒したエネミーは復活せず、一度通ったマスを訪れても戦闘は行われません。
パズルゲームの内容が入力として与えられます。
プレイヤーを適切に操作することでゲームクリアすることが出来るか判定してください。
入力
$H$ $W$ $Y$ $X$ $A_{1,1}$ $A_{1,2}$ $\ldots$ $A_{1,W}$ $A_{2,1}$ $A_{2,2}$ $\ldots$ $A_{2,W}$ $\vdots$ $A_{H,1}$ $A_{H,2}$ $\ldots$ $A_{H,W}$
制約
- $ 2 \le H,W \le 500$
- $ 1 \le Y \le H$
- $ 1 \le X \le W$
- $ 1 \le A_{i,j} \le 10^{9}$
- 入力は全て整数
出力
ゲームクリアできるなら Yes
、そうでないなら No
と出力してください。
最後に改行してください。
サンプル
サンプル1
入力
3 4 2 1 10 8 15 50 5 4 40 50 10 1 30 60
出力
Yes
画像のように動くとクリアできます。同じマスを何度も通ってよく、どの順にエネミーを倒しても構いません。
サンプル2
入力
2 5 2 2 10 5 50 10 30 10 10 50 50 20
出力
No
どう動いてもクリアできません。
サンプル3
入力
2 2 1 1 10 2 1 12
出力
Yes
$(1,1) → (1,2) → (1,1) → (2,1) → (2,2)$ のように動けばクリアできます。
サンプル4
入力
5 5 5 5 3 2 2 5 20 2 8 1 3 10 9 4 20 40 10 8 7 32 22 88 20 13 26 51 100
出力
Yes
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。