Estojo de Joias
A princesa da Nlogônia guarda sua coleção de pérolas em um estojo de jóias quadrado composto de N colunas, cada coluna com N caixinhas. Ela coloca um número diferente de pérolas em cada caixinha, e organiza o estojo de forma que em cada coluna, de cima para baixo, as caixinhas contenham números crescentes de pérolas e que em cada linha, da esquerda para a direita, as caixinhas também contenham números crescentes de pérolas.
A princesa desconfia que sua irmã pequena, que é muito sapeca, esteja mexendo nas suas coisas em suas brincadeiras. Em particular, a princesa desconfia que seu estojo de jóias tenha sido rotacionado de 90 graus no sentido horário, possivelmente múltiplas vezes.
A figura (a) abaixo mostra um exemplo da organização original de um estojo 4 × 4. A figura (b) mostra o estojo rotacionado no sentido horário, de 90 graus, uma vez.
(a)
3 | 4 | 6 | 12 |
---|---|---|---|
7 | 10 | 11 | 19 |
9 | 14 | 17 | 22 |
15 | 16 | 20 | 25 |
(b)
15 | 9 | 7 | 3 |
---|---|---|---|
16 | 14 | 10 | 4 |
20 | 17 | 11 | 6 |
25 | 22 | 19 | 12 |
Dados os números de pérolas em cada caixinha, escreva um programa para determinar qual o menor número de rotações de 90 graus no sentido anti-horário que são necessárias para fazer com que o estojo de jóias volte para o estado original.
Input
A primeira linha da entrada contém um inteiro $N$ , o número de linhas e colunas do estojo $(2 ≤ N ≤ 50)$. Cada uma das $N$ linhas seguintes contém $N$ inteiros $K_{i,j}$ , a quantidade de pérolas da caixinha na linha $i$ e coluna $j$ $(0 ≤ K_ {i,j} ≤ 10^5 , para 1 ≤ i ≤ N e 1 ≤ j ≤ N )$. Na entrada, as linhas são dadas de cima para baixo, e as colunas são dadas da esquerda para a direita.
Output
Seu programa deve produzir uma única linha contendo apenas um inteiro $R$ (que pode ser 0, 1, 2 ou 3), o menor número de vezes que o estojo de jóias deve ser rotacionado no sentido anti-horário para retornar ao estado original.
4 15 9 7 3 16 14 10 4 20 17 11 6 25 22 19 12
1
Explanation 1:
Este exemplo corresponde ao exemplo do enunciado. E necessário rotacionar o estojo no sentido anti-horário uma vez.
3 300 250 150 280 200 140 240 190 130
2
Explanation 2:
E necessário rotacionar o estojo no sentido anti-horário duas vezes.
2 2 4 1 3
3
Explanation 3:
É necessário rotacionar o estojo no sentido anti-horário três vezes.