Escreva um programa ou função que, quando fornecido n
, imprima uma espiral de n
caracteres composta há muito tempo pelo alfabeto latino, ABCDEFGHIJKLMNOPQRSTUVWXYZ
repetida conforme necessário. Essa espiral deve percorrer o alfabeto apenas para a frente.
Relacionada à Espiral do Alfabeto , embora a espiral percorra o alfabeto para frente e para trás, e a espiral seja constante.
Casos de teste
4 AB
DC
40 UVWXYZ
TGHIJA
NSFABKB
MREDCLC
LQPONMD
KJIHGFE
0
10 GHIJ
FAB
EDC
1000 UVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ
TGHIJKLMNOPQRSTUVWXYZABCDEFGHIJA
SFABCDEFGHIJKLMNOPQRSTUVWXYZABKB
REZCDEFGHIJKLMNOPQRSTUVWXYZABCLC
QDYBMNOPQRSTUVWXYZABCDEFGHIJCDMD
PCXALEFGHIJKLMNOPQRSTUVWXYZKDENE
OBWZKDEFGHIJKLMNOPQRSTUVWXALEFOF
NAVYJCDMNOPQRSTUVWXYZABCDYBMFGPG
MZUXIBCLCDEFGHIJKLMNOPQREZCNGHQH
LYTWHABKBABCDEFGHIJKLMNSFADOHIRI
KXSVGZAJAZGHIJKLMNOPQROTGBEPIJSJ
JWRUFYZIZYFUVWXYZABCDSPUHCFQJKTK
IVQTEXYHYXETQRSTUVWXETQVIDGRKLUL
HUPSDWXGXWDSPUVWXYZYFURWJEHSLMVM
GTORCVWFWVCROTGHIJAZGVSXKFITMNWN
FSNQBUVEVUBQNSFABKBAHWTYLGJUNOXO
ERMPATUDUTAPMREDCLCBIXUZMHKVOPYP
DQLOZSTCTSZOLQPONMDCJYVANILWPQZQ
CPKNYRSBSRYNKJIHGFEDKZWBOJMXQRAR
BOJMXQRARQXMLKJIHGFELAXCPKNYRSBS
ANILWPQZQPWVUTSRQPONMBYDQLOZSTCT
ZMHKVOPYPONMLKJIHGFEDCZERMPATUDU
YLGJUNOXONMLKJIHGFEDCBAFSNQBUVEV
XKFITMNWVUTSRQPONMLKJIHGTORCVWFW
WJEHSLMLKJIHGFEDCBAZYXWVUPSDWXGX
VIDGRKJIHGFEDCBAZYXWVUTSRQTEXYHY
UHCFQPONMLKJIHGFEDCBAZYXWVUFYZIZ
TGBEDCBAZYXWVUTSRQPONMLKJIHGZAJA
SFAZYXWVUTSRQPONMLKJIHGFEDCBABKB
REDCBAZYXWVUTSRQPONMLKJIHGFEDCLC
QPONMLKJIHGFEDCBAZYXWVUTSRQPONMD
LKJIHGFE
Regras
- Sua entrada será um número inteiro não negativo
0 <= n <= 1000
, mas seu código deve lidar teoricamente com qualquer número inteiro não negativo. - Seu formato de saída pode estar em qualquer formato são, com delimitadores, se necessário.
- Rotações e reflexões são equivalentes.
- Seu alfabeto pode estar em maiúsculas ou minúsculas.
- Os espaços vazios em sua espiral podem ser preenchidos com quaisquer nulos não alfabéticos que você achar conveniente.
- A espiral em si pode ter qualquer forma que você achar melhor. Espirais retangulares funcionam melhor com soluções ASCII, mas soluções gráficas podem ser mais curtas com espirais circulares.
- Espaços iniciais e finais e novas linhas são permitidos.
- Isso é código de golfe. A resposta mais curta em bytes (ou equivalente) vence.
Como sempre, se algo não estiver claro ou incorreto, informe-me nos comentários. Boa sorte e bom golfe!