Desafio:
Dado um número inteiro n
como entrada. Crie um diamante com o dobro do número especificado n
.
Entrada :
A entrada é inteira n
e 2 <n ≤ 3000.
Saída:
A saída será uma sequência e será em forma de diamante, consistindo de +
uma linha de adição no início, mostrando o n
uso+
Exemplos :
D (3): +++ + +++ +++++ +++++ +++ + D (5): +++++ + +++ +++++ +++++++ +++++++++ +++++++++ +++++++ +++++ +++ + D (6): ++++++ + +++ +++++ +++++++ +++++++++ +++++++++++ +++++++++++ +++++++++ +++++++ +++++ +++ +
Critérios de vencimento:
Este é o código-golfe, pelo que o código mais curto em bytes para cada linguagem de programação vence.
n
unário?+
como marca registrada ?n
é par?Respostas:
brainfuck ,
151139 bytesExperimente online!
Recebe entrada via unário, com
+
s como marcas registradas ( permitido pelo pôster ). Decidi refazer isso, pois pensei que o antigo era um pouco mais longo do que poderia ser (embora este também seja!).Versão antiga (151 bytes):
Experimente online!
Recebe a entrada como célula inicial. Eu não conseguia pensar em uma maneira de aproveitar o primeiro tempo para ajudar no segundo, então há um loop para cada um deles.
Como funciona:
E apenas por diversão:
Experimente online!
fonte
Tela , 9 bytes
Experimente aqui!
Explicação (alguns caracteres foram substituídos para parecerem monoespaços):
fonte
Python 3 ,
959475 bytesExperimente online!
Minha primeira tentativa de jogar golfe, qualquer sugestão de melhoria é bem-vinda.
EDIT: economizou 1 byte graças a Kevin Cruijssen
EDIT: removido mal-entendido sobre a contagem de bytes
EDIT: salvou muito mais bytes graças a Jo King e user202729
fonte
print'\n'.join(['+'*n]+a+a[::-1])
poderá ser usado sem parênteses para salvar mais 2 bytes. +1 de mim. Ótima primeira resposta. :)lambda
)).2*i+1 == i+i+1 == i-(-i-1) == i-~i
,.05AB1E , 14 bytes
Experimente online!
Explicação
Também 14 bytes:
L‚˜'+×ćs.∞∊.c»
fonte
'+×s·ÅÉ'+×∊.C»
usandoÅÉ
é outraÅÉ
mas eu o descartei porque não pensei em usá·
-lo para fazê-lo funcionar.Python 3 ,
7978 bytesExperimente online!
Graças a estas dicas para jogar golfe, o Python responde por me informar sobre a
.center
função. Retorna uma lista de strings.fonte
R ,
135 11096 bytesExperimente online!
@ JayCe com o corte final.
A
rep
função é atribuída a um operador infixa existente, tal como<
ou^
de modo querep("+", n)
é equivalente ao"<"("+", n)
que pode ser escrito utilizando<
, como um operador infixa como em"+" < n
e encurtado para"+"<n
.fonte
"+"
diretamente em vez de salvá-lo comoz
economiza alguns bytes! Tente aqui<
porrep
menos de 100 caracteres! AquiCarvão , 15 bytes
Experimente online! Link é a versão detalhada do código. Explicação:
Imprima um triângulo invertido de
+
s a altura da entrada e quase o dobro da largura.Mova o cursor para baixo para que ele caia na linha adicional após a reflexão.
Faça uma imagem espelhada do triângulo.
Desenhe a linha adicional usando a coluna atual para evitar ter que ler a entrada novamente.
Reflita a saída para que a linha adicional aponte para a esquerda.
fonte
Stax , 11 bytes
Execute e depure
fonte
Python 3 ,
7675 bytesExperimente online!
fonte
QB64,
8279 bytesfonte
JavaScript (Node.js) ,
106105 bytesExperimente online!
________________________________________________
Segunda abordagem
JavaScript (Node.js) ,
1051009998 bytesExperimente online!
fonte
Japonês
-R
,1817 bytesExperimente online!
fonte
PowerShell , 55 bytes
Experimente online!
fonte
+
vez dex
. Além disso, você pode tornar sua resposta um pouco mais favorável à comunidade usando o Experimente online! e acrescentando um link para a sua respostaJ , 29 bytes
Experimente online!
Explicação:
fonte
Haskell ,
8582 bytesGuardado 3 bytes graças a nimi !
Experimente online!
fonte
x
que economiza 4 bytes: Experimente online!Ruby ,
7161 bytesExperimente online!
fonte
PHP, 103 bytes
Corra como pipe com `-nR 'ou experimente online .
fonte
PowerShell , 58 bytes
Experimente online!
Simplesmente um loop up e down, cada iteração produzindo o número apropriado de espaços e, em seguida, o número apropriado de sinais de adição. Ho-hum.
fonte
F # (Mono) , 123 bytes
Experimente online!
fonte
/home/runner/code.fs(2,10): error FS0039: The value or constructor 'String' is not defined. Cannot open assembly 'code.exe': No such file or directory.
PHP 102 bytes
Ik sei que pode ser muito menor do que isso;) Greetz mangas
fonte
sed 4.2.2 , 69
A pontuação inclui +1 para a
-r
opção sed.Experimente online!
fonte
Ruby , 59 bytes
Experimente online!
fonte
Python 3 , 98 bytes
Experimente online!
Versão legível:
fonte
Yabasic , 102 bytes
Uma função anônima que recebe entrada como um número unário com
+
marcas de contagem e saídas para o console.Experimente online!
Versão alternativa, 117 bytes
Uma resposta de função anônima que recebe entrada como um número decimal e sai para o console.
Experimente online!
fonte
sub
rotina definida pelo usuário , não fazem parte de nenhuma biblioteca e, portanto, não podem ser chamados discretamente como as funções internas (por exemploAbs(x)
). Você pode ler um pouco mais sobre isso aqui, se quiser.JavaScript (Node.js) , 183 bytes
Experimente online!
Atualizei minha resposta graças a @JoKing
fonte
APL (Dyalog Unicode) , SBCS de 25 bytes
Experimente online!
Explicação:
fonte
1↓[2]
->0 1↓
ou até melhor:c,⍨⌽1↓[2]c←
->⍉(⊖⍪1↓⊢)⍉
Java 8, 159 bytes
Definitivamente pode ser jogado um pouco mais, mas é um começo.
Explicação:
Experimente online.
fonte
Japonês
-R
,1816 bytesTente
Explicação
fonte
Anexo , 62 bytes
Experimente online!
Um lambda que aceita o número inteiro como argumento.
Exemplo
fonte
T-SQL, 152 bytes
De acordo com nossas regras de E / S , a entrada é obtida por meio da tabela preexistente t com um campo inteiro n .
Loop de contagem manual, não muito "semelhante ao SQL". Formatado:
fonte