209,211,212

209

そのまま,90度回転,180度回転,270度回転した景色を用意しておいて、全部調べる。
全部調べないと、回転したら切れ端の座標がより小さくなる場合を見逃す。

211

iさんが、距離di、速度viで走った場合、di*ki=t*vi。ただし、tはみんながそろう時間、kiはその時の周回数。
iさんの周回数はki=(vi/di)*tで、kiが整数となるtを考える。tはすべての人で共通なので、まずdiのlcm(di)を求めて、pi=vi*(lcm(di)/di)を計算。すべてのpiについてgcd(pi)を求めて割れば周回数kiがでる。この時、t=lcm(di)/gcd(pi)。

212

g[町from][町to][割引券の残り枚数]でダイクストラ。最初に目的地に着いた合計金額を返す。