Ainda outro flagrante roubo de um roubo de um roubo . Voto a favor!
Sua tarefa, se você deseja aceitá-la, é escrever um programa / função que produz / retorna sua entrada / argumento de string. A parte complicada é que, se eu reverter seu código-fonte, a saída também deve ser revertida.
Para simplificar, você pode assumir que a entrada é sempre uma sequência de linhas única contendo apenas letras ASCII (az), dígitos (0-9) e espaços.
Deve suportar uma entrada de pelo menos 8 caracteres (não é necessário mais de 8).
O comportamento para entrada vazia é indefinido.
Exemplos
Digamos que seu código fonte seja ABC
e sua entrada seja xyz
. Se eu escrever CBA
e executá-lo, a saída deve ser zyx
.
Digamos que seu código fonte seja ABC
e sua entrada seja 96
. Se eu escrever CBA
e executá-lo, a saída deve ser 69
.
Um único espaço em branco à esquerda ou à direita é aceitável desde que seja consistente nas saídas normais e reversas.
fonte
[...s]
converte em matriz, que é revertida e depois unida novamente como uma sequência..join``
- dê uma olhada em Tagged TemplatesAPL (Dyalog Unicode) ,
32 bytes SBCS-1 byte graças a dzaima
Experimente online!
⊂
inclua o argumento para tratá-lo como um singleton:[1,2,3]
→[[1,2,3]]
⌽
reverse (não tem efeito em singletons):[[1,2,3]]
→[[1,2,3]]
Uma matriz fechada imprime com um espaço à esquerda e à direita.
! enilno ti yrT
⌽
reverse (não tem efeito em singletons):[1,2,3]
→[3,2,1]
⊂
delimitar:[1,2,3]
→[[1,2,3]]
Uma matriz fechada imprime com um espaço à esquerda e à direita.
fonte
Bash , 9 bytes
Invertida:
Experimente online! ! enilno ti yrT
fonte
cat
.Barril ,
32 bytesNenhum TIO ainda, pois ele usa o intérprete mais recente
Explicado
Heh. Está certo. O barril também suporta essas respostas de 2 bytes (e usando ASCII puro e puro)!
Programa Antigo
Experimente online! Ou ! Enilno ti
Porque dois podem jogar o jogo de 3 bytes. É por isso. (mencionei que são 3 bytes de
utf8ASCII ?)fonte
Ruby , 21 bytes
Experimente online!
! enilno ti yrT
fonte
Haskell , 11 bytes
Experimente online! Experimente invertido!
fonte
Stack Cats
-m
, 4 bytesExperimente online!
Experimente invertido!
Isso funciona para todas as entradas que não contêm bytes nulos.
Explicação
Uau, cheguei ao ponto em que estou escrevendo isso à mão ...
O programa completo é
|>I|I<|
.Como na solução do desafio anterior, já que o comando central
|
não faz nada, o mesmo ocorre com o programa inteiro.O programa invertido é então
|I>|<I|
.Curiosamente, se usarmos esse programa de reversão sem
-m
ainda obter uma solução funcional dessa vez, os únicos bytes adicionais incorridos pela omissão-m
são os que obtemos ao espelhar o código.Stack Cats , 7 bytes
Experimente online!
Experimente invertido!
Explicação
A versão invertida deste programa é
|I>|<I|
a mesma que acima, para que possamos ignorá-la. Mas a versão não revertida é diferente. Como o<>
ponto agora é o contrário, o comando central acaba sem fazer nada, então o programa se torna um gato:E assim,
>I|
desfaça exatamente a primeira metade do programa.fonte
Carvão , 2 bytes
Experimente online! Explicação:
S
imprime implicitamente a entrada explícita e←
move o cursor para a esquerda (sem efeito na saída final). Invertida:Experimente online!
←
altera a direção da impressão implícita da entrada explícitaS
, revertendo a saída.fonte
05AB1E , 2 bytes
Experimente online ou tente online invertido .
Explicação:
fonte
Linguagem de Máquina de Turing ,
1432414321 bytesExperimente online!
Experimente invertido!
Eu usei este site para revertê-lo.
fonte
Pitão,
53 bytesz_k
-2 bytes ao perceber que a nova linha gira de qualquer maneira
Explicação:
Explicação invertida:
fonte
Gaia , 2 bytes
Experimente online!
Experimente invertido!
Solução muito semelhante a outras línguas de golfe.
Explicação
Marcha ré
fonte
Japonês , 2 bytes
Experimente | Invertida
fonte
Cubix , 19 bytes
Experimente online!
Cubificado
A^
obtenha toda a entrada e insira o loopo?
emitir os TOS da pilha e testar@
sair se testar para negativo/;^
reflita de volta, faça TOS e volte a entrar no loopTodos os outros comandos são evitados.
Invertida
Experimente online!
Cubificado
ABq
Obtenha toda a entrada, inverta e solte os TOS no final da pilhao$?|?
TOS de saída, pule o teste e reconecte-o ao teste@
parar se o teste for negativoWUq
mudar de faixa, virar em sentido inverso para soltar o início do loop TOSfonte
Python 3 , 27 bytes
Experimente online!
! enilno ti yrT
fonte
Pip , 4 bytes
Experimente online! ! enilno ti yrT
Utiliza o fato de que
RV
é o operador reverso, masVR
é uma variável indefinida. Ambas as versões imprimem o valor de sua última expressão; na versão padrão, isso éa
(com o primeiroa
e oVR
não-ops), enquanto na versão reversa, isso éRVa
(com o primeiroa
sendo o não-op).fonte
Wolfram Language (Mathematica) , 16 bytes
Experimente online!
Invertida :
Experimente online!
Leva uma lista de caracteres como entrada. Para entrada de string, use
StringReverse
.fonte
Perl 5
-p
, 11 bytesO óbvio.
fonte
MathGolf , 3 bytes
Explicação:
Invertida:
fonte
Pushy , 4 bytes
Experimente on-line: encaminhamentos , trás
Implementação simples com o caractere de comentário
\
. No programa forward,"
imprime a entrada e o restante é um comentário; no programa para trás,@
inverte a entrada antes de imprimir.Como alternativa, poderíamos substituir
\
porc
, o que limparia a entrada da pilha.fonte
Kotlin , 15 bytes
Minha primeira resposta Kotlin, e muito menor do que o equivalente em java!
Experimente online!
Invertida:
! enilno ti yrT
fonte
s//)(desrever.s
. No entanto, acho que é personalizado fornecer pelo menos um lambda completo no Kotlin (ou pelo menos Java). Então, algo como{it}//})(desrever.ti{
deve fazer o truque.J , 7 bytes
Invertida:
Experimente online!
O comentário de Jonah na resposta de Adam no APL me levou a aceitar o desafio. Foi bem difícil, porque as inflexões
.
e:
sempre se ligam ao símbolo à esquerda, e um único|
(valor abstrato) não fica satisfeito com as cordas.Como estes funcionam
Basicamente, é uma mistura aleatória de no-ops conectadas através de vários conectores.
Esta resposta é um byte mais curto que o abuso trivial de comentários:
J , 8 bytes
Invertida:
Experimente online!
Em J, o marcador de comentário em linha
NB.
é mais longo do que qualquer outro idioma que eu conheça.fonte
W , 2 bytes
Praticamente o mesmo que a solução 05AB1E.
Explicação
noitanalpxE
fonte
Geléia , 2 bytes
Experimente online!
Invertida!
Explicação
Explicação (invertida)
Sete outros dois participantes
Ṛṛ ḷU ḷṚ Uȧ Ṛȧ ȯU ȯṚ
fonte
Flak cerebral , 13 bytes
Experimente online!
Encaminhar: Apenas um comentário, para que ele apenas produza a entrada
Invertida:
Experimente online!
Mova tudo para a segunda pilha, para que ela seja revertida.
fonte
CJam , 7 bytes
Versão chata com comentários. Se o CJam falhar silenciosamente, eu já poderia ter salvo 3 bytes em 2 perguntas!
fonte
Stax , 2 bytes
Execute-o invertido
fonte
PHP , 27 bytes
Experimente online!
Experimente online!
fonte
C (gcc) , 56 bytes
Nada chique. Teria usado,
puts()
mas o espaço em branco à direita não seria consistente entre as duas variantes.Experimente online!
Invertida!
fonte