Esta é a minha primeira pergunta aqui, então qualquer sugestão nos comentários seria apreciada! Obrigado ;)
Introdução
Uma estratégia muito comum para o jogo de 2048 nunca é derrubada . Isso posiciona todos os grandes números no topo e os mais baixos no fundo. Portanto, se você aplicar essa estratégia corretamente, seu quadro sempre corresponderá ao seguinte padrão:
O padrão a ser verificado / Sua tarefa
Sua submissão deve ser um programa completo ou uma função que retorne um valor verdadeiro se o quadro puder ser descrito desta maneira: Descendo cada coluna do quadro, o primeiro número deve ser o mais alto da coluna, o segundo número deve ser menor igual ou igual ao primeiro número, etc. Uma boa placa de 2048 é definida como uma placa em que os números mais altos estão todos no topo. Isso é código-golfe , então o código mais curto por idioma (em bytes) vence.
I / O
A entrada pode ser obtida de qualquer maneira apropriada, por exemplo, uma matriz de 4 matrizes, cada uma contendo 4 números ou uma matriz de 16 números. No total, sempre haverá 16 números, representando a placa 4x4. A saída deve ser um valor verdadeiro da entrada: uma "boa placa 2048" e, caso contrário, um valor falso.
Exemplos
Verdade:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 8 |
|-------------------|
| 4 | | 32 | 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 128| 32 | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
Falsy:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 16 |
|-------------------|
| 32 | | 128| 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 32| | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
Nota
Veja o segundo caso de teste falso: quando houver um valor vazio (ou 0) em algum lugar e mesmo quando for seguido por um valor maior que o último número diferente de zero, isso deve ser falso, porque o próximo valor após o zero seria maior que o próprio 0, o que o torna inválido.
Boa sorte!