AtCoder Grand Contest 023 B. Find Symmetries

問題概要

B - Find Symmetries

 

解法

NxNの盤面を四方に無限に繰り返し並べて、無限に広がる平面を考えても差し支えない。

ここで、y=x+cの直線をイメージすれば、同じ直線が通るマスは、「良い盤面であるかどうか」が一致する事が分かるので、O(N)個のマスでO(N^2)かけて調べれば十分。