То, что вы можете сделать, это создать базовую c форму: каким-то образом однозначно решить, какая из 4 возможных ориентаций является базовой c, а затем сравнить их только с помощью базовых c форм.
Как решить, какая форма является базовой c? Это на самом деле не имеет значения, если оно последовательное. Скажем, выберите самую высокую в соответствии с лексикографическим сравнением.
Редактировать: О количестве уникальных фигур: грубо говоря, это биномиальное число (n^2 over k)/4
- только то, что оно не учитывает симметричные формы, которые сохранились с поворотом на 180 °, хотя для сравнения имеется только несколько таких форм (по крайней мере, для больших n, k).
Примечание: следует также учитывать случай форм, отличающихся только смещением.