Problema
Se não houver entrada, escreva um programa ou uma função que produza ou retorna a seguinte string:
(<(<>(<>.(<>.<(<>.<>(<>.<>)<>.<>)>.<>).<>)<>)>)
Regras
- O programa mais curto vence.
- Espaço em branco à direita permitido.
- Novas linhas à direita permitidas.
- Parâmetros não utilizados para funções permitidas.
code-golf
ascii-art
kolmogorov-complexity
LiefdeWen
fonte
fonte
(<>.<>)
:"(<" + "(<>" + "(<>." + ... + "(<>.<>)" + "<>.<>)" + ">.<>)" + ... + ">)"
Respostas:
SOGL V0.12 , 12 bytes
Explicação:
Experimente aqui!
fonte
05AB1E , 16 bytes
Experimente online!
Explicação
fonte
Python 3 , 49 bytes
Experimente online!
fonte
JS (Jsfuck), 10.614 bytes
Não tinha acesso ao site, tinha que descobrir tudo isso manualmente -.-
Explicação:
A maioria dos caracteres é relativamente fácil: para os colchetes que estou executando
O ponto final é obtido fazendo js criar um número de notação científica como 1.1e + 21 e pegando o caractere de ponto após converter em uma string
Os colchetes são mais difíceis, temos que executar a função para criar uma string de objeto html itálico e roubar os colchetes angulares. O principal truque é obter o 'c' da palavra itálico, o que requer a criação de outra função para tirar o c de 'function'
Há muito espaço para melhorias aqui, principalmente sobre quais funções são usadas para obter colchetes. Também me lembro de uma maneira mais fácil de obter o personagem 'c' se o itálico for melhor, mas eu precisaria procurar nos meus arquivos antigos para encontrá-lo
fonte
C # (Mono) ,
5452 bytesExperimente online!
-2 bytes graças a Kevin Cruijssen
RIP C #
fonte
;
não é contado para respostas lambda. E()
pode ser substituído por um único caractere (null
objeto não utilizado ). Meta post relevante para o segundo.s=>
está perfeitamente bem.Retina , 30 bytes
Experimente online!
fonte
V ,
28272522 bytes3? 4? bytes graças a @KritixiLithos
Experimente online!
fonte
hx
com apenasX
.dkHxògJ
é 1 byte menor quedkVHgJ0x
.Íî
coisa do DJ também funciona #i(<>.<>)òÙxlHÄ$xGòddÍî
23lX
paraxl
também: DR , 42 bytes
Programa bastante simples que tira proveito da maneira como a substring funciona em R. Então
substring('(<>.<>)',-4:6,2:12)
produz o seguinte vetorcat
com um separador vazio envia para STDOUT no formato necessário.Experimente online!
fonte
Carvão,
1817 bytesExperimente online! Link é a versão detalhada do código.
Usa o novo operador Fatia.fonte
TrumpScript, 70 bytes
Eu sei, é uma solução chata.
fonte
Braquilog , 14 bytes
Experimente online!
fonte
ᶠ
para aᵘ
.C (gcc) ,
5957 bytes24 bytes a menos que umaputs()
solução simples . Certamente haverá alguma solução recursiva elegante, mas até agora a sobrecarga se torna muito grande a cada tentativa.Experimente online!
fonte
Brainfuck,
198175167 BytesEu nunca fiz um codegolf, então este é o meu primeiro. O feedback é muito apreciado.
Experimente online!
Eu fui para a solução mais óbvia na minha opinião. Primeiro, defino as células 1-5 como uma das letras "(). <>". Então eu apenas vou para as células certas e produzo o personagem.
ATUALIZAÇÃO: Alterei a ordem em que os caracteres aparecem na "fita", tornando o programa mais curto e mais eficiente.
ATUALIZAÇÃO 2: Apenas revisitei minha postagem depois de um tempo e percebi que, usando uma sequência mais curta para configurar as células, eu poderia economizar alguns bytes.
fonte
JavaScript, 47 bytes
Usa o mesmo método da resposta Python de Rod .
fonte
Mathematica 41 bytes
fonte
Carvão , 20 bytes
Experimente online!
Graças a Destructible Lemon por observar um padrão (-4).
AST:
O que
‖B
faz é basicamente palindromizar visualmente a tela.fonte
-a
.Print
s lá, não sei o que você quer dizer.C (gcc) , 61 bytes
Eu sei que isso é coxo, mas é muito mais curto que minha outra solução ...
C (gcc) , 103 bytes
Aqui está uma versão em que estou tentando ser um pouco complicado ...
C (gcc) ,
117115 bytesUma versão recursiva que é totalmente complicada ...
Experimente online!
fonte
Uma multidão de olhares em branco assistindo Batman em homenagem a Adam West ...
C # (.NET Core) , 393 bytes
Experimente online!
fonte
q , 29 bytes
raze"(<>.<>)"{(y-5)_x}/:(!)11
-2 bytes graças ao streetster
EDIT para explicação:
O idioma é interpretado da direita para a esquerda.
Como funciona
fonte
_x
por 1 byte, e mudançatil 11
para(!)11
por mais 1 byte de poupança = 2 bytes salvos :)Haskell ,
5545 bytesExperimente online!
Primeira resposta de Haskell para vencer a solução codificada!
Explicação
A maneira como essa resposta funciona é criando uma lista de funções a serem aplicadas à string
(<>.<>)
. Primeiro construímos a esquerda e o centro como que nos dá todos os prefixos do tamanho dois ao sete. Então construímos o direito com
o que nos dá todos os sufixos do tamanho seis ao dois.
Uma vez que tenhamos a lista de funções, usamos um bind monádico (
>>=
) que é apenasconcatMap
mais curto. A função com a($"(<>.<>)")
qual concatmapamos é a que aplica a entrada à string(<>.<>)
.Isso cria a string.
fonte
Gelatina , 22 bytes
1 byte graças a Kritixi Lithos.
Experimente online!
fonte
µ
Java 8, 52 bytes
Chato, mas não há nenhuma maneira de tornar isso mais curto em Java. Apenas inicializar uma temp String já tem 11 bytes .. (
String t="something";
) e o usosubstring
algumas vezes certamente custa muitos bytes.A alternativa mais curta a um retorno literal é provavelmente esta (58 bytes):
Experimente aqui.
fonte
=>
) se você quiser adicioná-lo.Python 2, 57 bytes
Eu digo que parece uma gangue de corujas espreitando atrás do líder. Apenas dizendo.
fonte
MATL , 28 bytes
Experimente online!
fonte
brainfuck ,
245210 bytesGolfe em andamento.
Experimente online!
fonte
Haskell, 95 bytes
Isso é muito maior que os 49 bytes necessários para uma string literal com a saída, mas o melhor que eu poderia fazer para utilizar a estrutura . Como de costume, eu amo setas e
inits &&& tails
produz uma tupla da lista de substrings iniciais e da lista de substrings finais da entrada. Em seguida, esses dois elementos da tupla são reunidos em uma lista, passando a tupla para++
, e essa lista éconcat
enada para uma cadeia grande. As chamadastail
einit
evitam duplicar o(<>.<>)
meio (um gerado porinits
e o outro portails
) e soltar os parênteses indesejados do início e do final, levando em consideração apenas substrings de comprimento 2 ou mais.fonte
Gelatina , 18 bytes
Experimente online!
Como funciona
fonte
C (clang) ,
6261 bytesIsso encerra somente após o tempo limite em TIO porque a gravação para padrão de entrada falhar, mas vai terminar em um terminal. O programa depende de uma ordem específica de avaliação (comportamento indefinido) e não funciona com, por exemplo, o gcc.
Agradecemos à @Steadybox por uma ideia que salvou um byte!
Experimente online!
Verificação
Versão alternativa, 62 bytes
Ao custo de mais um byte, a solução se torna muito mais portátil.
Experimente online!
fonte
(<
está faltando lá.Python 2 , 55 bytes
não resisti a bater a resposta atual do python 2
Experimente online!
fonte
Geléia , 19 bytes
Experimente online!
fonte