Guión
A menudo cocino lasaña, pero también tengo algunos errores. Como repito estas fallas tan a menudo, pensé que tal vez podría hacer un programa que verifique si hice todo bien.
Lasaña válida
Una lasaña válida es
- Al menos 5 columnas de ancho
- Al menos 4 capas de altura
- Excluyendo queso extra
- La capa superior es queso (representada por
,) - La segunda capa es salsa (representada por
@o#) - Después de eso, las capas se alternan (salsa de 1 capa, fideos de 1 capa (representados por uno
~o-)) - Cada columna puede tener una o dos capas de queso
El programa
Debería
- tomar una cadena de lasaña como entrada
- cuerda multilínea
- conjunto de cadenas
- la cadena solo contiene los caracteres
,@#~- - Rectangular
- Acolchado con espacios si es necesario
- Salida ya sea una lasaña válida
- Cualquier cosa que sea verdad en tu idioma si es válida
- Nada ni nada que sea falso en tu idioma
- ser tanto
- un programa completo
- Una función
- que solo utiliza la funcionalidad que se implementó antes del 14.12.2016
Casos de prueba
,, ,
,,,,,,
@@@###
~~~~~-
@##@@#
--> 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)
Criterios ganadores
los
- más corto
- en bytes
- código-golf
- funcional
la sumisión gana.
,@#~-con la excepción de espacios como relleno, pero el primer caso de prueba contiene espacios en el medio de una línea.