AOJ1136:Polygonal Line Search

1日1幾何とか言いながら早速サボる意識の低さが伺える。

ということで、今日の問題↓

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1136&lang=jp

問題概要

  • 折れ線Aが与えられます
  • 他にもいっぱい折れ線が与えられます
  • Aと同じ折れ線を探してください

折れ線の折れる角度が90度以外ありえないということで幾何ゲーしなくては良いのでは?と思ったが、

平面幾何におけるベクトル演算をつい数時間前に見た影響でベクトル使って解くことにした。

下手にintで愚直に頑張るより、多分そのほうが楽。

解法

  • 入力からそれぞれの座標を各端点からのベクトル座標に直してvectorに入れます
  • 折れ線Aを90度ずつ4回回転します
  • それぞれ回転したAに対してBのベクトル座標と一致しているか判定します

ソース

感想 

簡単な問題でも書く量が無駄に多めになるので微妙にバグる