Literalmente! 6 de abril é o Dia Nacional do Teflon , que é comemorado com panelas revestidas com Teflon (o que faremos). Portanto, dado um número inteiro positivo n
, crie uma panela de Teflon. A seção "pan" da panela é um octógono, com cada um dos lados consistindo de n
caracteres, que variam de acordo com o lado em que está, exceto pelos lados usando o caractere {
ou }
. Esses lados terão sempre um comprimento de caractere. Se n
for 1:
_
/ \
{ }
\_/
Como você pode ver, cada lado consiste em um caractere (ou {
, }
, /
, \
, ou _
). Se n
for 2:
__
/ \
/ \
{ }
\ /
\__/
O identificador será criado com n+3
=
's e finalizado com zero ( 0
).
Se n
é um:
_
/ \
{ }====0
\_/
n
é 2:
__
/ \
/ \
{ }=====0
\ /
\__/
n
é 3:
___
/ \
/ \
/ \
{ }======0
\ /
\ /
\___/
Se n
for 4:
____
/ \
/ \
/ \
/ \
{ }=======0
\ /
\ /
\ /
\____/
Regras e Critérios
Não são permitidas brechas
A alça sai do lado direito (o lado feito do
}
personagem)A entrada é um número inteiro positivo
Se o lado não consistir em um
{
ou}
(não no lado esquerdo ou direito), eles serão constituídos pelosn
respectivos caracteres:_ / \ Left side { } Right side \_/
- Como esse é o código-golfe , o código mais curto vence!
O
lugar do0
botão?Respostas:
Carvão ,
4138363028 bytesAgradecemos a @Emigna por ajudar a salvar dois bytes, obrigado a @ ASCII-only por salvar seis bytes e obrigado a @Neil por salvar outros dois bytes!
Experimente online!
Explicação:
fonte
Nη↖ηG←η_↙↙η{↓↘ηM↑×η_↗η}×⁺³η=P0
Nη↙η↑←×_η↖η↗{↗η×_η↓↘η}×=⁺³η0
(1 byte salvo imprimindo a metade inferior da panela primeira fazendo com que oM
byte desnecessário e uma salva, invertendo os parâmetros para×
fazer aP
desnecessária.)JavaScript (ES6), 171 bytes
Toda a assadeira de
pizzaé muito repetitiva; portanto, a função r (projetada como um literal de modelo marcado) repete o primeiro caractere de sua entrada n vezes. Isso lida com o topo, o meio e as linhas da panela. O restante é repetido substituindo uma sequência de espaços em branco; os$`
e$'
subsitutions corresponder automaticamente para aumentar e diminuir o número de espaços em branco posicionando, assim, a/
e\
apropriadamente. Finalmente, os_
s são preenchidos na última linha, pois é sutilmente diferente da segunda linha nesse aspecto.fonte
JavaScript + HTML,
575 bytes (apenas JS de 451 bytes)376 bytes (somente JS de 482 bytes)Não é uma abordagem complicada: várias concatenações de cordas usando condições para as cinco partes diferentes da panela: as linhas superior, inferior e média e as metades superior e inferior.
Reduzi o máximo que pude, mas era o limite com esse método.
EDIT: não era - adicionalmente jogado por @ programmer5000
fonte
PHP, 174 bytes
Recebe entrada do STDIN; executar
-nR
ou testá-lo online .demolir
fonte
Python 3, 196 bytes
Usei algumas variáveis para encurtar o código, mas é mais direto. Aqui está uma versão mais longa e mais legível:
Edit: alterado para ler n de stdin, 181 → 196 bytes
fonte
Python 2 ,
180178 bytesExperimente online!
fonte
Python 2.7,
194195191187185 bytesExperimente online!
Abra para editar sugestões para reduzi-lo. :)
Editar 1: +1 byte - Créditos ao ElPedro por apontar um erro no código, o que aumentou em 1 byte.
Editar 2: -4 bytes - Créditos ao piyush-ravi por remover argumentos desnecessários.
Editar 3: -4 bytes - Como eu não vi isso? : P
Editar 4: -2 bytes - Substituindo '\ n' por ';'
fonte
PowerShell , 165 bytes
Experimente online!
Recebe entrada
$n
, define$a
um monte de espaços,$b
um monte de sublinhados e a seqüência concatena isso com um espaço. Isso fica na calha.Loops de
$n
baixo para1
. Se$n=1
, isso será executado apenas uma vez. A cada iteração, fazemos uma concatenação de cadeia de espaços, a/
, mais espaços com contador$i
e a\
. Esses são todos deixados no pipeline.Em seguida, vem a parte do meio com a alça, que coincidentemente tem
$a*3
espaços no meio e$n+3
=
sinais, depois a0
. Isso fica na calha.Se
$n
for maior que1
, então$n-1
é verdade; assim, entramos na condicional, onde damos a outra direção para formar o fundo da panela. Se$n=1
, então não precisamos dessa parte devido ao modo como as linhas funcionam. Esses são todos deixados no pipeline. Terminamos com os espaços e sublinhados com o$a\$b/
fundo da panela.Todas essas seqüências de caracteres do pipeline são enviadas via implícito
Write-Output
que as imprime com novas linhas entre os elementos.fonte
JavaScript + HTML - 346 bytes
JavaScript - 314 bytes, HTML - 32 bytes
Sem golfe
fonte
C, 249 bytes
Experimente online
fonte