Hemos tenido muchos desafíos con el alfabeto. Para este desafío, se le pasa el resultado de un desafío alfabético, y debe generar el patrón escalado a tamañoN
.
Por ejemplo, si N=5
y le pasaron el L-phabet :
ABCDEFGHIJKLMNOPQRSTUVWXYZ
BBCDEFGHIJKLMNOPQRSTUVWXYZ
CCCDEFGHIJKLMNOPQRSTUVWXYZ
DDDDEFGHIJKLMNOPQRSTUVWXYZ
EEEEEFGHIJKLMNOPQRSTUVWXYZ
FFFFFFGHIJKLMNOPQRSTUVWXYZ
GGGGGGGHIJKLMNOPQRSTUVWXYZ
HHHHHHHHIJKLMNOPQRSTUVWXYZ
IIIIIIIIIJKLMNOPQRSTUVWXYZ
JJJJJJJJJJKLMNOPQRSTUVWXYZ
KKKKKKKKKKKLMNOPQRSTUVWXYZ
LLLLLLLLLLLLMNOPQRSTUVWXYZ
MMMMMMMMMMMMMNOPQRSTUVWXYZ
NNNNNNNNNNNNNNOPQRSTUVWXYZ
OOOOOOOOOOOOOOOPQRSTUVWXYZ
PPPPPPPPPPPPPPPPQRSTUVWXYZ
QQQQQQQQQQQQQQQQQRSTUVWXYZ
RRRRRRRRRRRRRRRRRRSTUVWXYZ
SSSSSSSSSSSSSSSSSSSTUVWXYZ
TTTTTTTTTTTTTTTTTTTTUVWXYZ
UUUUUUUUUUUUUUUUUUUUUVWXYZ
VVVVVVVVVVVVVVVVVVVVVVWXYZ
WWWWWWWWWWWWWWWWWWWWWWWXYZ
XXXXXXXXXXXXXXXXXXXXXXXXYZ
YYYYYYYYYYYYYYYYYYYYYYYYYZ
ZZZZZZZZZZZZZZZZZZZZZZZZZZ
Necesitarías generar:
ABCDE
BBCDE
CCCDE
DDDDE
EEEEE
Para fines de explicación, usaré solo ABCD
, en lugar del alfabeto completo. Debe poder hacer coincidir el L-phabet (arriba), así como los siguientes patrones:
La única línea:
ABCD or A
B
C
D
La sola línea repetida N
veces
ABCD or AAAA
ABCD BBBB
ABCD CCCC
ABCD DDDD
La Tabula Recta :
ABCD
BCDA
CDAB
DABC
Este triángulo del alfabeto:
A or AAAAAAA
AB BBBBB
ABC CCC
ABCD D
ABC
AB
A
También tenemos medios triángulos en muchas variedades:
A AAAA A ABCD
BB BBB AB ABC
CCC CC ABC AB
DDDD D ABCD A
Finalmente, el cuadrado:
AAAAAAA
ABBBBBA
ABCCCBA
ABCDCBA
ABCCCBA
ABBBBBA
AAAAAAA
Todos los patrones anteriores son de tamaño 4. Sin embargo, se le pasará un patrón de tamaño 26, así como N
entre 1 y 26, y deberá escalar el patrón. No necesita manejar ningún otro patrón.
- La salida para 1 siempre será el carácter único
A
- La salida para 26 siempre será el mismo patrón de tamaño completo pasado.
- Se permiten espacios finales al final de cada línea, así como una nueva línea final al final
- Puedes encontrar todos los patrones de talla 26 aquí
Este es un código de golf , ¡así que hágalo en la menor cantidad de bytes posible!
Respuestas:
PHP, 502 bytes
Funciona con la longitud de cadena de un patrón. Un patrón tiene estas condiciones. Carta al comienzo y al final. CR se eliminan.
Expandido
fuente
"substr"
,$_GET["n"]
,"Y"
(-6). 2)$x[$n]."\n"
->"$x[$n]\n"
, análogo para$u
(-2). 3) Estoy bastante seguro de que se puede utilizar algún tipo de>
para sus<number>==$l
comparaciones (-4). 4)($n=0;$n<...;$n++)
->($n=-1;++$n<...;)
(-1). 5)if($o)
es innecesario: si$o
está vacío, también lo estástrrev($o)
y cualquiera de sus subcadenas, por lo que no se imprimirá nada (-6). 6)&&
->&
(-1). 7) ¿Realmente necesita una cadena vacía en lugar de nula para substr?$x[$n]??""
->$x[$n]
(-4)?R,
483412 bytesEsta es la primera vez que publico, me dijeron que no tenía experiencia en R en los últimos años, así que solo practique un poco aquí.
Expandido
fuente
JavaScript (ES6),
382380370 bytesPase una serie de cadenas a la función
f()
, así:Versión menos golfista con comentarios:
fuente