問題一覧 > 通常問題

No.1948 足し算するだけのパズルゲーム(1)

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 128
作問者 : 👑 H20H20 / テスター : naskyanaskya 蜜蜂蜜蜂
3 ProblemId : 7917 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2022-05-05 15:26:47

問題文

DHMOさんは、SNSアプリでやたらと流れるパズルゲームの広告が気になったので遊ぶことにしました。
パズルゲームは縦 $H$ 行横 $W$ 列のマス目の中でプレイヤーを動かすゲームです。マスの上から $i$ 行目、左から$j$ 列目のマスを $(i,j)$ と呼ぶことにします。($1 \le i \le H$ かつ $1 \le j \le W$)を満たさないマスは存在しません。

プレイヤーははじめ $(1,1)$ にいて、攻撃力は $A_{1,1}$ です。
$(1,1)$ 以外のマスにはエネミーが存在し、 $(i,j)$ にいるエネミーの攻撃力は $A_{i,j}$です。
$(H,W)$ にいるボスエネミーに勝利するとゲームクリアとなります。

プレイヤーは $(i,j)$ にいるとき、 $(i+1,j)$ か $(i,j+1)$ のうち存在するいずれかのマスに移動できます。
移動後のマスに存在するエネミーと戦闘を行います。
プレイヤーの攻撃力がエネミーの攻撃力より高い場合、プレイヤーはエネミーに勝利し、エネミーの攻撃力分プレイヤーの攻撃力が増加します。
攻撃力がエネミー以下であれば敗北しコンティニューしなければゲームオーバーです。

敗北した際、$1$ 回に限りコンティニューできます。(30秒の広告を2回見る必要がありますが、我慢します)
$(i,j)$ で敗北し、コンティニューした際は、 $(i,j)$ にいるエネミーとの戦闘を避けた上で、$(i,j)$ からゲームを続行できます。
この際、$(i,j)$ のエネミーに勝利したことにならず、プレイヤーの攻撃力は増減しません。
ここで、コンティニューでは勝利したことにはならないため、$(H,W)$ ではコンティニューできず、ゲームオーバー扱いとします。

パズルゲームの内容が入力として与えられます。
プレイヤーを適切に操作することでゲームクリアすることが出来るか判定してください。

入力

$H$ $W$
$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 A_{i,j} \le 10^{9}$
  • 入力は全て整数

出力

ゲームクリアできるなら Yes 、そうでないなら No と出力してください。

最後に改行してください。

サンプル

サンプル1
入力
3 4
10 8 15 50
5 4 40 50
10 1 30 60
出力
Yes

画像のように動くことでゲームクリアすることができます。マス $(2,3)$ の戦闘では負けますが、一回に限りコンティニューできます。

サンプル2
入力
2 5
10 5 50 10 30
10 10 50 50 20
出力
No

ボスエネミーに勝つ攻撃力を手に入れることができますが、ボスエネミーまでたどり着くが出来ません。

サンプル3
入力
2 2
10 2
1 12
出力
No

エネミーと同じ攻撃力である場合は負けます。また、ボスエネミーとの戦闘ではコンティニューできません。

サンプル4
入力
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もしくは右上の雲マークをクリックしてアカウントを作成してください。