Cenário
Costumo cozinhar lasanha, mas também tenho alguns erros. Como repito essas falhas com tanta frequência, pensei que talvez pudesse fazer um programa que verifica se fiz tudo certo.
Lasanha válida
Uma lasanha válida é
- Pelo menos 5 colunas de largura
- Pelo menos 4 camadas de altura
- Excluindo queijo extra
- A camada superior é queijo (representada por
,
) - A segunda camada é molho (representado por um
@
ou#
) - Depois disso, as camadas se alternam (molho de 1 camada, macarrão de 1 camada (representado por um
~
ou-
)) - Cada coluna pode ter uma ou duas camadas de queijo
O programa
Devemos
- pegue uma corda de lasanha como entrada
- sequência multilinha
- matriz de string
- a cadeia contém apenas os caracteres
,@#~-
- Retangular
- Acolchoado com espaços, se necessário
- Saída, seja uma lasanha válida
- Qualquer coisa válida no seu idioma, se válida
- Nada ou nada que seja falso no seu idioma
- seja
- um programa completo
- uma função
- que usa apenas a funcionalidade implementada antes de 14.12.2016
Casos de teste
,, ,
,,,,,,
@@@###
~~~~~-
@##@@#
--> truthy
@@@#
----
@@##
----
@###
--> falsy (cause of cheese and width (You don't have to print the stuff in the brackets))
,,,,,
-----
@####
-----
@@@@@
--> falsy (have the sauce as last layer)
Critérios de vitória
o
- mais curto
- em bytes
- código-golfe
- funcional
submissão ganha.
,@#~-
com exceção de espaços como preenchimento, mas o primeiro caso de teste contém espaços no meio de uma linha.