Olá,
Como é contado o número de espalhamentos?
Em todos os exemplos com instante > 0, entendo que está faltando um espalhamento.
No exemplo 1 abaixo, houve 1 espalhamento no instante 0, em que o monte [[0, 0, 0, 5, 0, 0, 0]] virou [[0, 0, 1, 3, 1, 0, 0]].
Exemplo 1:
>>> monte = [[0, 0, 0, 5, 0, 0, 0]]
>>> ativa = [[-1, -1, -1, 0, -1, -1, -1]]
>>> print(util.to_string(monte))
+---+---+---+---+---+---+---+
| 0 | 0 | 0 | 5 | 0 | 0 | 0 |
+---+---+---+---+---+---+---+
>>> print(util.to_string(ativa))
+----+----+----+----+----+----+----+
| -1 | -1 | -1 | 0 | -1 | -1 | -1 |
+----+----+----+----+----+----+----+
>>> n_esp, n_novas = espalhe(monte, ativa, TORRE, 0)
>>> n_esp
1
>>> n_novas
0
Já no exemplo 2, entendo que houve o espalhamento anterior (instante 0) e mais um do instante 1, totalizando 2 espalhamentos, e não 1 como mostra abaixo:
>>> n_esp, n_novas = espalhe(monte, ativa, TORRE, 1)
>>> n_esp
1
>>> n_novas
2
>>> print(util.to_string(monte))
+---+---+---+---+---+---+---+
| 0 | 0 | 2 | 1 | 2 | 0 | 0 |
+---+---+---+---+---+---+---+
>>> print(util.to_string(ativa))
+----+----+----+----+----+----+----+
| -1 | -1 | 1 | 0 | 1 | -1 | -1 |
+----+----+----+----+----+----+----+
Consegui contar o número de ativações, mas meu número de espelhamentos diverge dos exemplos.
Alguém entendeu o critério de conta?
Obrigada