|>I|
Provalo online!
Provalo al contrario!
Funziona con tutti gli input che non contengono byte null.
Spiegazione
Wow, ho raggiunto il punto in cui li scrivo a mano ...
Il programma completo è |>I|I<|
.
| Reverse the entire stack down to the EOF marker -1 (since there are no zeros in the input).
> Move one stack over to the right (which only contains zeros).
I Does nothing on zero.
| Does nothing on zero.
I Does nothing on zero.
< Move back to the initial stack.
| Reverse the input once more.
Come nella soluzione alla sfida precedente, dal momento che il comando centrale |
non fa nulla, così come l'intero programma.
Il programma inverso è quindi |I>|<I|
.
| Reverse the entire stack down to the EOF marker -1 (since there are no zeros in the input).
I Move the -1 one stack to the left and turn it into a +1.
> Move back to the initial stack.
| Reverse it again, but this time without the EOF marker.
< Move back to the left.
I Move the +1 back onto the initial stack and turn it into a -1 again.
| Reverse the entire stack. We now have the -1 as an EOF marker again at the bottom
and the rest of the stack has been reversed three times, i.e. one net reversal.
È interessante notare che se usiamo questo programma di inversione senza -m
che questa volta continuiamo a ottenere una soluzione funzionante, quindi gli unici byte aggiuntivi sostenuti dall'omissione -m
sono quelli che otteniamo dal mirroring del codice.
|I<|>I|
Provalo online!
Provalo al contrario!
Spiegazione
La versione inversa di questo programma è |I>|<I|
la stessa di cui sopra, quindi possiamo ignorarla. Ma la versione non invertita differisce. Dato che <>
ora puntano dall'altra parte, il comando centrale finisce per non fare nulla, quindi il programma diventa un gatto:
| Reverse the entire stack down to the EOF marker -1 (since there are no zeros in the input).
I Move the -1 one stack to the left and turn it into a +1.
< Move another stack to the left, which contains only zeros.
| Does nothing on zero.
E quindi, >I|
annulla esattamente la prima metà del programma.