Os elfos encontraram o código cifrado que protege a porta da oficina do Papai Noel 🔐. O PIN tem 4 dígitos, e está escondido dentro de blocos como estes:
[1++][2-][3+][<]
Escreve uma função que decifre o PIN a partir do código.
O código é formado por blocos entre colchetes [...] e cada bloco gera um dígito do PIN.
Um bloco normal tem a forma [nOP...], onde n é um número (0-9) e depois pode haver uma lista de operações (opcionais).
As operações são aplicadas em ordem ao número e são:
O resultado é sempre um dígito (aritmética mod 10), por exemplo 9 + 1 → 0 e 0 - 1 → 9.
Também existe o bloco especial [<], que repete o dígito do bloco anterior.
Se no final houver menos de 4 dígitos, deve-se devolver null.
🧩 Exemplos
decodeSantaPin('[1++][2-][3+][<]')
// "3144"
decodeSantaPin('[9+][0-][4][<]')
// "0944"
decodeSantaPin('[1+][2-]')
// null (apenas 2 dígitos)