Este é um bom desafio para iniciantes e um bom assassino de tempo.
Eu apenas disse um log natural porque o título era muito curto, isso não tem nada a ver com logaritmos.
Dadas 2 variáveis:
- O número de formigas
n
. - A largura do log
w
.
Saída de um registo de largura w
com n
formigas (Exemplo mostrado w=3
, n=6
)
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
Uma única formiga se parece com isso:
\O/ # Upper-case O
-O- # Upper-case O
/o\ # Lower-case o
^
Algumas leis sobre formigas:
- As formigas podem não se tocar nem a borda do tronco diretamente, elas preferem tocar em espaços.
- Cada linha de formigas deve ser
w
larga, comn/w
linhas de formigas. - As formigas sempre precisam de um log, a largura do log é maior que 0, garantida.
- Formigas também ... bem, precisam de formigas, o número de formigas é maior que 0, garantido.
- As formigas também são surpreendentemente bem organizadas; elas preencherão um registro da esquerda para a direita, de cima para baixo; como se estivessem lendo um livro.
Ant-xamples
w = 3, n = 5
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
| \O/ \O/ |
| -O- -O- |
| /o\ /o\ |
| ^ ^ |
| |
w = 1, n = 1
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
w = 1, n = 3
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
Isso é código-golfe , a pessoa com o menor número de vitórias.
code-golf
ascii-art
code-golf
code-golf
kolmogorov-complexity
code-golf
string
unicode
code-golf
number
sequence
primes
palindrome
code-golf
game
decision-problem
code-golf
math
geometry
code-golf
graphical-output
interactive
code-golf
set-partitions
code-golf
number
arithmetic
restricted-source
code-golf
decision-problem
python
recursion
code-golf
ascii-art
code-golf
source-layout
code-golf
function
recursion
functional-programming
code-golf
game
combinatorics
permutations
code-golf
string
file-system
code-golf
string
hashing
code-golf
stack-exchange-api
code-golf
string
code-golf
math
number
arithmetic
polyglot
Urna de polvo mágico
fonte
fonte
w>n
deveria haver espaço extra diante da mão direita|
ou não, ou depende de nós?Ant-xamples
(eu odeio trocadilhos)Respostas:
Geléia ,
4443 bytesRiscado 44 não é 44 com o uso de
Experimente online!
Quão?
Eu perguntei sobre
w<n
em um comentário, pois é um pouco ambíguo.Se o log precisar ter
w
largura de formigas em vez de apenas formigasw
, custa dois bytes:Isso faz o mesmo que antes, exceto que, em vez de colocar um único espaço para formar a primeira linha em branco, cria uma linha extra inteira de formigas e corta todas, exceto a linha em branco à direita.
fonte
V ,
70, 68 bytesExperimente online!
Isso nunca aconteceu comigo antes, mas um bug conhecido realmente me salvou bytes!
É meio difícil explicar exatamente o que está acontecendo, mas, infelizmente, quando você tenta duplicar algo por colunas, V move uma coluna antes de duplicar. É por isso que originalmente eu fiz:
que não usa o operador duplicado. No entanto, como já precisávamos passar uma linha, podemos simplesmente fazer
fonte
PHP> = 7.1, 150 bytes
Versão Online
fonte
Python 2, 144 bytes
Experimente Online!
fonte
w=1
en=3
a sua versão).05AB1E , 47 bytes
Experimente online!
Explicação
fonte
SOGL ,
747174 bytesPrimeira parte: função que gera uma parte de log vazia
A segunda parte tem uma string compactada
"nΤ↕¬┐α┐PΝld‘
, que é a formiga. Descompacta para\-/ OOo^/-\
. Essa é a formiga (com espaçamento para a direita), mas levada de cima para baixo e para a direita comoEle é armazenado dessa maneira porque a
┼
função anexa seqüências de caracteres dessa maneira (isso é porque você pode multiplicar a sequência para adicionar várias instâncias). A parte em si: função que solicita um número na pilha, indicando quantas formigas desenhar.E a principal função:
fonte
Perl 5 , 159 bytes
Experimente online!
Perl 5 , 152 bytes
Outro baseado na solução Python:
Experimente online!
fonte
Mathematica 210 Bytes
Pensando que preciso criar uma linguagem de golfe baseada no Mathematica.
fonte
Python 2, 166 bytes
fonte
Carvão , 43 bytes
Experimente online! Link é a versão detalhada do código. Explicação:
Entrada
w
.Entrada
n
, crie uma sequência den
espaços e divida-a em linhas de comprimentow
(exceto a última peça que pode ser menor). Faça um loop sobre essas linhas.Imprima os lados da seção de log.
fonte