問題文

https://atcoder.jp/contests/abc351/tasks/abc351_e

ウサギのジャンプはそれぞれ(x+1,y+1),(x+1,y-1),(x-1,y+1),(x-1,y-1) と2つの変数が一緒に動いてやりづらい.

実際に描いてみる.

jumnp.png

ジャンプの角度θが45,135,225,315度になっていることがわかる.

45度ずつそれぞれズラせばジャンプによって増加する変数は一つだけに抑えられそう.

反時計回りに45度それぞれずらした座標を計算するとそれぞれ

$(0,\sqrt{2}),(-\sqrt{2},0),(0,-\sqrt{2}),(\sqrt{2},0)$ となる.

分かりやすく$\sqrt{2}$ 倍してあげる.

$(0,2),(-2,0),(0,-2),(2,0)$

ジャンプの座標を変換したので調べる座標も変換しないといけない.

ジャンプの座標を変換したときに行ったことは

の2つなので計算する.

一つ目の45度反時計回りに回転は回転行列を用いて計算する.

$$ \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} \begin{pmatrix} x \\ y \end{pmatrix}

$$