05AB1E , 162 159 157 bytes
Código
Droga, muito tempo, mas é pelo menos uma coisa:
">:U"VI3Qið16×7166b1ð:0Y:DUJ,Yð13×JD?X,3838b1ð:0Y:D?X,16255b1ð:0Y:D?X,16367b1ð:0Y:4F?X,}ð21×Y3×J,}¹2Qið4×" U U"©J,"> :"®JD," > "?®,,ð6×'U3×J,}¹iY,}"quack
Experimente online!
Explicação
A primeira parte do código existe de ">:U"V, que define Ypara essa sequência. Depois disso, apenas verificamos se a entrada é igual a 3. Isso é feito na I3Qiparte. Se igual, imprimimos a pega gigante:
N = 3
Começa pela primeira vez, com ð16×apenas 16 caracteres de espaço. Depois disso, há um número 7166b. Isso cobre a ">:U "parte, com uma pequena ajuda da Retina :). Eu usei esse script para converter a string em um número binário. Depois disso, chegamos à 1ð:0Y:parte, que substitui todos 1por um caractere de espaço e todos 0por Y, que foi definido como >:U. Depois disso, Dduplicamos essa string, armazenamos-a Xusando Ue Join na pilha. Nós pop-lo usando ,, que imprime a seqüência completa com uma nova linha. Todos os outros depois disso são todos baseados no mesmo princípio. A instrução if termina no segundo }.
A conversão completa pode ser encontrada aqui .
N = 2
Agora verificamos se a entrada é igual a 2. Isso é feito na ¹2Qiparte. Depois disso, se for igual, pressionamos o caractere de espaço 4 vezes usando ð4×. Depois disso, empurramos a " U U"corda e a armazenamos usando ©(ideia descaradamente roubada de Jelly: p). Novamente colocamos Jna pilha e imprimimos isso com uma nova linha. Depois disso, empurramos a "> :"string, recuperamos o " U U"uso ®, Jcolocamos na pilha e Dduplicamos essa string e imprimimos ambas na mesma linha.
Teste curto, o que isso fará " > "?®,:?
Depois de imprimir a string acima, obtemos a duplicata da segunda linha da face e a imprimimos (já que é a mesma da segunda linha).
A última parte abordada neste caso é:
ð6×'U3×J,
ð6× # Push the space character × 6
'U3× # Push the "U" character three times
J, # Join and print pop with a newline
N = 1
Este é mais fácil de explicar:
¹1QiY
¹1Qi # Check if the input is equal to 1
Y # Push the magpie face
# This is then implicitly printed
N = 0
¹0Qi"quack
¹0Qi # Check if the input is equal to 0
"quack # Weird sound what magpies make
# Implicitly printed