Dai puzzle di programmazione al codice golf


74

Il tuo compito è quello di scrivere un programma che emetta la stringa esattaProgramming Puzzles (trailing newline opzionale), ma quando tutti gli spazi, le schede e le Code Golfnewline vengono rimossi, vengono emessi (trailing newline opzionale).

Il conteggio dei byte è il conteggio del primo programma, con gli spazi ancora lì.

Appunti

  • Gli spazi all'interno Code Golf e Programming Puzzles verranno rimossi come parte della rimozione, quindi pianificare di conseguenza.

  • Nelle codifiche in cui 0x09, 0x0A e 0x20 non sono rispettivamente tabulazioni, newline o spazi, questi caratteri verranno rimossi.

  • Se il tuo codice è

    42  $@ rw$
    @42
    

    allora questo deve produrre Programming Puzzles. Inoltre, nella stessa lingua,

    42$@rw$@42
    

    deve produrre Code Golf.

Questo è , quindi vince il codice più corto in byte! In bocca al lupo!


3
sarà Code Golfrimosso anche lo spazio in , che dire di quello in Programming Puzzles.
Colsw,

2
Questo sarà impossibile almeno in Whirl e Whitespace .
Ingegnere Toast,

13
A cosa servono i voti stretti?
OldBunny2800,

12
@ OldBunny2800 buona domanda. Continuo a chiederlo, ma il commento viene rimosso ...
programmer5000,

12
I voti stretti riguardano la mancanza di input e output e le restrizioni sulla formattazione di input e output. 100% se avessi una sezione etichettata "regole" con un elenco puntato di punti che ritieni ovvi sulla sfida avresti 0 voti ravvicinati. Riguarda la presentazione con la gente di CompSci, se riusciamo a pensare a una domanda apparentemente idiota da porre che potrebbe salvarci un byte o a, proveremo a contrastare quell'idiozia e sarai un grande scrittore di domande.
Magic Octopus Urn,

Risposte:


65

Python 2 , 50 byte

print["Code\40Golf","Programming Puzzles"][" ">""]

Provalo online!

Con tutti gli spazi rimossi:

print["Code\40Golf","ProgrammingPuzzles"]["">""]

Provalo online!

Grazie a Stephen S per 3 byte e Erik l'Outgolfer per 1


2
Accidenti, ninja! Stavo per fare clic su Posta risposta! +1
HyperNeutrino,

1
Penso che hai appena rotto il cervello del mio amico. Come funziona anche questo?
Stevoisiak,

11
@StevenVascellaro È davvero semplice. Nel primo caso, " ">""restituisce True, poiché, dal punto di vista lessicografico, uno spazio è maggiore della stringa vuota. Nel secondo caso, "">""ritorna False, poiché nulla può essere più grande di se stesso. Truee in Falserealtà sono solo 1e 0rispettivamente, solo nel booltipo di dati anziché into long. Nel primo caso, gli spazi vengono conservati, quindi l'elemento all'indice 1 "Programming Puzzles"viene restituito alla lettera. Nel secondo caso, gli spazi sono spariti, quindi \x20l'elemento nell'indice 0 "Code\x20Golf"per preservare uno spazio.
Erik the Outgolfer,

9
@StephenS No, perché a differenza di JavaScript, Python non ha un'ossessione per il cast implicito.
Mego

1
Se trovi la mancanza di ossessione di Python che disturba.
John Dvorak,


22

05AB1E , 15 byte

”ƒËŠˆ”" "v”–±ÇÀ

Provalo online!

Spiegazione

”ƒËŠˆ”           # push "Code Golf"
      " "v       # for each character in the string " " do
          ”–±ÇÀ  # push "Programming Puzzles"
                 # implicitly output top of stack

... Non capisco. Questo utilizza la compressione del dizionario o qualcosa del genere?
LegionMammal978,

@ LegionMammal978 Sono abbastanza sicuro.
NoOneIsHere

@ LegionMammal978: utilizza effettivamente la compressione del dizionario.
Emigna,

5
@Emigna Va bene, perché l'ultima volta che ho controllato, nessuna di queste stringhe poteva essere inserita in 4 byte: p
LegionMammal978

1
@ Draco18s: Kevin ha scritto un bel tutorial nella pagina dei suggerimenti che puoi usare per avere un'idea migliore di come usarlo.
Emigna,


16

CJam , 38 byte

" ""Programming Puzzles""Dpef!Hpmg":(?

Provalo online! o con spazi rimossi

Spiegazione

" "                    e# Push this string.
"Programming Puzzles"  e# Push "Programming Puzzles".
"Dpef!Hpmg":(          e# Push "Dpef!Hpmg" and decrement each char, giving "Code Golf".
?                      e# If the first string is true (non-empty) return the second string,
                       e#   else return the third.

Se gli spazi sono nel programma o no determina se la prima stringa è vera o falsa.


27
Il tuo codice è triste:(
Roman Gräf,

14
Se sei disposto a utilizzare non stampabili, "Bncd\x19Fnke":)è invece il codice felice (sostituisci \x19).
Erik the Outgolfer,

15

Gelatina , 18 byte

“½ċṭ6Ỵ»ḷ
“Ñ1ɦ+£)G»

Provalo online!

Spiegazione

Nel programma come scritto, la prima riga è una funzione di supporto che non viene mai eseguita. La seconda riga (l'ultima nel programma) è il programma principale ed è la rappresentazione compressa della stringa "Programming Puzzles"(che viene quindi stampata implicitamente).

Se rimuovi la nuova riga, l'intera cosa diventa un grande programma. “½ċṭ6Ỵ»è la rappresentazione compressa della stringa "Code Golf". valuta ma ignora il suo argomento di destra, lasciando lo stesso valore di prima della sua esecuzione; può essere usato per valutare le funzioni per i loro effetti collaterali (cosa che ho già fatto prima), ma può anche essere usato, come qui, per commentare efficacemente il codice.

È interessante notare che la logica attuale qui è più corta della voce 05AB1E, ma il codice nel suo insieme risulta più lungo perché il compressore di stringhe è meno bravo a comprimere queste stringhe particolari.


Questo risulta essere valido.
Erik the Outgolfer,

Per quanto ne so, alcuni di questi caratteri possono essere salvati usando un byte, assumendo codifiche ben note. in UTF-8 ottengo 36 byte ... Sbaglio?
Steffen,

@steffen: Jelly utilizza la propria codifica dei caratteri , in cui tutti i 256 diversi caratteri che utilizza possono essere memorizzati in un singolo byte. (L'unica ragione per cui lo fa piuttosto che usare una codifica preesistente è per leggibilità (!); Potresti banalmente scrivere il programma codificato, diciamo, nella tabella codici 437, e funzionerebbe nell'interprete Jelly, ma in genere sarebbe molto più difficile da leggere.)

13

Gelatina , 17 byte

“Ñ1ɦ+£)G“½ċṭ6 Ỵ»Ṃ

Provalo online!

Come funziona

Come nell'altra risposta Jelly, Ñ1ɦ+£)Ge ½ċṭ6Ỵcodificare le stringhe Programming Puzzles e Code Golf . inizia una stringa letterale e separa una stringa da un'altra, mentre »seleziona il tipo di letterale (compressione basata su dizionario), quindi questo produce

["Programming Puzzles", "Code Golf"]

quindi prende il minimo, cedendo Code Golf .

Tuttavia, aggiungendo uno spazio tra ½ċṭ6e , otteniamo una seconda stringa completamente diversa e il valore letterale viene valutato

["Programming Puzzles", "caird coinheringaahing"]

Dal momento che caird coinheringaahing è lessicograficamente più grande dei Puzzle di programmazione , seleziona invece la prima stringa.


Appena fatto lo stesso con“½ċṭ6Ỵ“Ñ1ɦ +£)G»Ṁ
Jonathan Allan

Per quanto ne sappia, nessuno di questi caratteri può essere salvato utilizzando un byte, assumendo codifiche ben note. in UTF-8 ottengo 34 byte ... Sbaglio?
Steffen,

@steffen Jelly utilizza una code page personalizzata che codifica ciascuno dei 256 caratteri che comprende come un singolo byte.
Dennis,

@Dennis grazie per il chiarimento.
steffen,

13

Javascript, 46 43 42 byte

x=>" "?"Programming Puzzles":"Code\40Golf"

console.log((x=>" "?"Programming Puzzles":"Code\40Golf")())
console.log((x=>""?"ProgrammingPuzzles":"Code\40Golf")())


5
È possibile sostituire il \x20nella prima stringa con uno spazio.
Shaggy,

Battimi, ben fatto. Questo ha bisogno di un finale ;?
ricdesi,

@ricdesi no, no.

3
@ricdesi poiché questo è codegolf, se il programma viene eseguito, funziona. ;a volte non sono richiesti in JavaScript.
Stephen,

2
È possibile sostituire \x20con \40per salvare un byte :-)
ETHproductions

10

Lingua Wolfram, 62 byte

"Programming Puzzles"[ToExpression@"\"Code\\.20Golf\""][[0 1]]

Lo spazio [[0 1]]è una moltiplicazione implicita, quindi questo equivale a [[0]]. Senza uno spazio, 01è giusto 1. La 0a e la 1a parte di questa espressione sono le stringhe che vogliamo.

Un'altra soluzione di dubbia validità (44 byte, 2 salvati da Kelly Lowder):

"Programming Puzzles"["Code\.20Golf"][[0 1]]

Il \.20viene sostituito da uno spazio immediatamente quando digitato in un ambiente di Mathematica, quindi non è chiaro se viene rimosso insieme con gli altri spazi ...


1
Non appena si incolla (o digita) questo in Mathematica, (basato sul cloud o meno) la sequenza di escape, \:0020si trasforma in uno spazio e quindi verrebbe rimosso, quindi non sono sicuro che ciò si qualifichi. Inoltre \.20è più breve di due personaggi. "Programming Puzzles"["Code"<>FromCharacterCode@32<>"Golf"][[01]]funzionerà.
Kelly Lowder,

1
@KellyLowder, hmm, questo è un buon punto. Ho aggiunto un'altra soluzione che dovrebbe evitare questo problema. (Grazie per il \.20suggerimento: come l'hai trovato? Pensavo di aver esaminato l'intera documentazione ...)
Non un albero il

1
Ho trovato il \.20facendo un errore di battitura. Sembra funzionare solo con codici di caratteri a due cifre. Non penso sia nella documentazione.
Kelly Lowder,

8

Excel - 56 byte

=IF(""=" ","Code"&CHAR(32)&"Golf","Programming Puzzles")

Molto simile alla maggior parte delle altre risposte ... niente di speciale qui.


8

Haskell, 48 byte

a _="Programming Puzzles";a4="Code\32Golf";f=a 4
a_="ProgrammingPuzzles";a4="Code\32Golf";f=a4

Definisce la funzione fche restituisce la stringa corrispondente.

Per riferimento, la vecchia versione è:

Haskell, 49/47 byte

f""="Code\32Golf";f(_)="Programming Puzzles";f" "

con spazi rimossi

f""="Code\32Golf";f(_)="ProgrammingPuzzles";f""

Due semplici combinazioni di motivi. (_)corrisponde a tutti i modelli. È possibile migliorare la versione senza spazi di un byte definendo il secondo modello come f" "=/ f""=, ma ciò fornisce un avviso "La corrispondenza del modello è ridondante".

Soluzione alternativa con lo stesso numero di byte:

last$"Code\32Golf":["Programming Puzzles"|" ">""]
last$"Code\32Golf":["ProgrammingPuzzles"|"">""]

7

Ohm , 33 32 byte

Utilizza la codifica CP437.

▀Bn¬i≈╣Ü╝Rb╡°╧S½uÇ▀
▀4>~H├MS░l╬δ

Provalo online! o prova senza spazi bianchi

Spiegazione

Con spazi bianchi:

▀Bn¬i≈╣Ü╝Rb╡°╧S½uÇ▀    Main wire

▀Bn¬i≈╣Ü╝Rb╡°╧S½uÇ▀    Push "Programming Puzzles" (compressed string)
                       Implicitly output the top stack element


▀4>~H├MS░l╬δ           Helper wire (never called)

Senza spazi bianchi:

▀Bn¬i≈╣Ü╝Rb╡°╧S½uÇ▀▀4>~H├MS░l╬δ    Main wire

▀Bn¬i≈╣Ü╝Rb╡°╧S½uÇ▀                Push "Programming Puzzles" (compressed string)
                   ▀4>~H├MS░l╬δ    Push "Code Golf" (compressed string)
                                   Implicitly output top stack element

Sono così felice di aver finalmente finito la compressione delle stringhe!
Nick Clifford,

1
@NickClifford La cosa curiosa che ho notato è che Code Golfsi è allungato una volta compresso. Immagino che sia a causa delle capitali? In entrambi i casi è ancora più breve di scriverlo normalmente perché non posso usare uno spazio letterale qui.
Business Cat,

Sì, Smaz è un po 'strano in quel modo.
Nick Clifford,

Cordiali saluti, sentitevi liberi di chiamarmi in chat se avete domande o richieste di funzionalità per Ohm.
Nick Clifford,

7

Japt , 29 byte

Con spazi:

`Co¸{S}Golf`r `PžgŸmÚÁ Puzz¤s

Provalo online!

Senza spazi:

`Co¸{S}Golf`r`PžgŸmÚÁPuzz¤s

Provalo online!


Questo sfrutta il fatto che in Japt, uno spazio chiude una chiamata di metodo. Con gli spazi, il codice è approssimativamente equivalente a questo codice JavaScript:

("Code"+(S)+"Golf").r(),"Programming Puzzles"

Questo viene valutato come JavaScript e il risultato viene inviato a STDOUT. Dall'ultima espressione "Programming Puzzles", quella stringa viene stampata.

Senza spazi, il codice è approssimativamente equivalente a:

("Code"+(S)+"Golf").r("ProgrammingPuzzles")

(Se non l'hai ancora capito, la Svariabile è un singolo spazio.) Il .r()metodo su una stringa, se viene fornito un argomento, rimuove tutte le istanze di tale argomento dalla stringa. Poiché "Code Golf"non contiene "ProgrammingPuzzles", restituisce "Code Golf"invariato, che viene quindi inviato a STDOUT.


Non ho nemmeno pensato di usare Sostituisci. Ben fatto!
Tom,

Per quanto ne so, alcuni di questi caratteri possono essere salvati usando un byte, assumendo codifiche ben note. in UTF-8 ottengo 36 byte ... Sbaglio?
Steffen,

@steffen Japt utilizza la codifica ISO-8859-1, in cui ogni carattere rappresenta un byte. Ma alcuni dei caratteri non sarebbero stampabili in questo programma, quindi ho usato la codifica Windows-1252 qui (in realtà, è stata generata automaticamente da TIO )
ETHproductions

6

Brachylog , 44 byte

" "Ṣ∧"Programming Puzzles"w|"Code"wṢw"Golf"w

Provalo online!

Spiegazione

" "Ṣ                                           If " " = Ṣ (which is itself " ")
    ∧"Programming Puzzles"w                    Write "Programming Puzzles"
                           |                   Else
                            "Code"w            Write "Code"
                                   Ṣw          Write " "
                                     "Golf"w   Write "Golf"

1
Cancellati 44 sono ancora 44 :( Modifica in &nbsp;entrambi i lati per risolvere :)
HyperNeutrino,

@HyperNeutrino Non è barrato, 44 ​​è la lunghezza con spazi e 42 senza.
Fatalizza il

Oh. Ops. Beh, è ​​troppo simile, quindi non potrei dirlo senza guardare il markdown andando in modifica. Non importa: P
HyperNeutrino,

5

Alice , 44 byte

/"floG!"t"edoC"#
 /"selzzuP gnimmargorP"d&o@

Provalo online!

Senza spazi bianchi:

/"floG!"t"edoC"#/"selzzuPgnimmargorP"d&o@

Provalo online!

Spiegazione

Nel primo programma, i due mirror /reindirizzano il puntatore dell'istruzione sulla seconda riga. "selzzuP gnimmargorP"invia i punti di codice richiesti in ordine di riverbero, daumenta la profondità dello stack e &ostampa quel numero di byte. @termina il programma.

Senza gli spazi bianchi, il programma è tutto su una sola riga. In tal caso, il puntatore dell'istruzione non può spostarsi in modalità Ordinale, quindi /diventa effettivamente no-op (tecnicamente, l'IP semplicemente non si muove per un passo, lo stesso /viene eseguito di nuovo e l'IP torna alla modalità Cardinale ). Quindi, se eliminiamo quelli dal programma, sembra che questo:

"floG!"t"edoC"#"selzzuPgnimmargorP"d&o@

Per includere lo spazio Code Golf, utilizziamo invece un punto esclamativo e lo diminuiamo con t. Dopo che abbiamo tutti i punti di codice nello stack, #salta il comando successivo, che è l'intera seconda stringa. d&oquindi stampa nuovamente lo stack e @termina il programma.


Devi giocare a golf (barrato 44 è 44)
MilkyWay90 l'

5

PHP, 44 byte

operatore ternario

<?=" "?"Programming Puzzles":"Code\x20Golf";

PHP, 51 byte

commento

<?=/** /"Code\x20Golf"/*/"Programming Puzzles"/**/;

PHP, 57 byte

switch di array

<?=["Code\x20Golf","Programming Puzzles"][(ord("
")/10)];


4

C # 88 81 70 63 byte

Func<string>@a=()=>" "==""?"Code\x20Golf":"Programming Puzzles";

Con spazi bianchi spogliati:

Func<string>@a=()=>""==""?"Code\x20Golf":"ProgrammingPuzzles";

Grazie a BrianJ per avermi mostrato come non avere spazio tra un tipo restituito dal metodo e il nome del metodo, PeterTaylor per aver salvato 7 18 byte e Patrick Huizinga per aver salvato 7 byte.

Stesso metodo di tutti gli altri, tecnicamente questo potrebbe essere considerato non valido perché il metodo non specifica un tipo di ritorno per il metodo, ma deve esserci uno spazio tra il tipo di ritorno e il nome del metodo.


1
puoi aggiungere il prefisso al nome della funzione con un @, quindi hai void@a...ed evita l'errore di compilazione "nessun tipo di ritorno" (aggiunge anche byte, però :()
Brian J

.Length<1salva un byte; \u0020salva sei se ho contato correttamente; e puoi fare una risposta valida (e salvare alcuni byte contemporaneamente) inviando un lambda invece di una funzione di livello superiore. Func<string>a=()=>...
Peter Taylor,

@BrianJ Hmm, non lo sapevo, mi chiedo perché funzioni dal punto di vista del compilatore. Ad ogni modo, può perdere byte, ma tecnicamente rende questa risposta non competitiva, quindi ne vale la pena. Grazie!
Skidsdev,

@Mayube @viene utilizzato principalmente se è necessario utilizzare una parola riservata come nome di variabile (l'equivalente è racchiuso []in VB.NET (e MS SQL Server)).
Brian J,

1
Sì, richiede la restituzione della stringa; ma se usi al =>posto returntuo non hai bisogno di spazi. (E anche se lo usi return, puoi return(...)).
Peter Taylor,

4

Common Lisp (SBCL), 52 byte

(format`,t"~[Programming Puzzles~;Code~@TGolf~]"0 1)

stampe Programming Puzzles

(format`,t"~[ProgrammingPuzzles~;Code~@TGolf~]"01)

stampe Code Golf

Ungolfed:

(format t "~[Programming Puzzles~;Code Golf~]" 0 1)

spiegazione:

Il trucco deriva fondamentalmente da come #'formatfunziona in Common Lisp.

In CL, la maggior parte degli spazi bianchi può essere omessa a condizione che non vi siano ambiguità su dove i token iniziano o finiscono. Il primo trucco consisteva nel separare i simboli formate t. Ho dovuto terminare in modo inequivocabile il formatsimbolo senza cambiare il modo in cui è tstato interpretato. Fortunatamente, `in CL termina il token precedente prima che venga elaborato e ,annulla l'effetto di` (`viene utilizzato per implementare il modello, dove l'espressione successiva che lo segue viene" quotata ", ma ogni sottoespressione con il prefisso a ,viene valutata e il risultato incluso nel modello, quindi `, è quasi un no-op).

Il terzo argomento formatè la stringa del modello. formatè simile a printf in C, ma ha direttive di formattazione molto più potenti e usa ~ per indicarle invece di%. ~ [e ~] consentono di selezionare tra più opzioni per la stampa, con ~; separandoli. Viene fornito un argomento aggiuntivo per formattare l'indice numerico di cui si desidera stampare. Per garantire che "" in Code Golf sopravviva, ho usato la direttiva tabulazione ~ T, che viene utilizzata per inserire spazi bianchi, generalmente per allineare il testo in colonne. ~ @ T è una variazione che inserisce solo un determinato numero di spazi, il valore predefinito è 1.

Infine, ci sono due argomenti per formattare 0 e 1. Prima che lo spazio bianco venga rimosso, lo 0 viene utilizzato da ~ [~; ~] per selezionare "Puzzle di programmazione" e l'argomento formato aggiuntivo (il 1) viene eliminato (Sto non sono sicuro di quanto siano standard gli argomenti di formattazione extra, ma questo funziona su Steel Bank Common Lisp). Dopo aver rimosso gli spazi bianchi, esiste solo un argomento (01) che seleziona "Code Golf".


1
+1, solo una cosa: "ma qualsiasi sottoespressione con il prefisso a ,viene valutata e unita in" Non è ,@necessaria per la giunzione?

"giuntato" è un termine scadente per questo, è vero. Tecnicamente, ,elimina l'espressione successiva e include il risultato nel modello, mentre ,@presuppone che l'espressione valuti in un elenco e includa direttamente i contenuti di tale elenco nel modello. Tradizionalmente nella comunità lisp, ,@si chiama "splicing", ma non sono sicuro che sia la scelta più ovvia. Proverò a riformularlo un po '.
djeis,

4

Java 8, 74 50 48 byte

()=>" "==""?"Code\040Golf":"Programming Puzzles"

@NonlinearFruit hai ragione, ho cambiato quello per non
Khaled.K

1
Non credo che la stampa sia un requisito, quindi potresti semplicemente restituire la stringa. Non l'ho provato ma anche l' ==operatore dovrebbe funzionare,()=>""==""?"Code\u00A0Golf":"Programming Puzzles"
NonlinearFruit

1
\u00A0-> \040per un risparmio di 2 byte.
Colpisce





3

dc , 50

[pq]sm[Programming Puzzles]dZ19=m[Code]n32P[Golf]p

Provalo online .

[ ]definisce una stringa - Zmisura la sua lunghezza. Se la lunghezza è 19, allora contiene uno spazio e viene chiamata la macro memorizzata nel registro m, che stampa Programming Puzzlesed esce. Altrimenti Code Golfviene stampato.


Potresti collegarti all'interprete dc / docs / github?
programmatore

@ programmer5000 Basta scegliere dc su TIO, quindi fare clic sul nome della lingua.
Dennis,

@Dennis grazie, non sapevo nemmeno che TIO lo facesse!
programmatore


3

T-SQL, 96 82 81 67 byte

print+iif(len(' x')=2,'Programming Puzzles','Code'+char(32)+'Golf')

Provalo online | Senza spazi

Vecchia versione (96 byte):

select(case'x'when(replace(' ',' ','x'))then'Programming Puzzles'else'Code'+nchar(32)+'Golf'end)

Bel lavoro, puoi arrivare a 67 perdendo le parentesi esterne e cambiando la condizione iniif(len(' x')=2
BradC

@BradC Close, ma il paren esterno impedisce di aver bisogno di uno spazio dopo print. Ho usato un +invece e ha funzionato.
mbomb007,

Deve aver incollato e contato quello sbagliato. E neanche io lo sapevo, ma il vantaggio è stato il primo personaggio che ho provato e ha funzionato.
mbomb007,

3

Perl 5 , 43 41 byte

say" "?"Programming Puzzles":Code.$".Golf

Provalo online!

Usa il fatto che ' 'è vero in perl ed ''è falso. La $"variabile è impostata su uno spazio per impostazione predefinita.

Grazie a @NahuelFouilleul per la rimozione di due byte.


forse in ritardo, ma "Code$\"Golf"è più corto e Code.$".Golftroppo
Nahuel Fouilleul

@NahuelFouilleul Sì, ero abbastanza nuovo quando ho scritto questa risposta. Grazie comunque!
Chris


2

Befunge , 76 byte

" "0`#v_"floG"84*"edoC",,,,,,,,,@
,,,,,@>"selzzuP gnimmargorP",,,,,,,,,,,,,,

Provalo online!

Non è la soluzione più compatta, ma scrivere di nuovo il codice Befunge senza spazi bianchi è piuttosto difficile.

All'inizio, confronta un carattere spaziale con 0. Se è maggiore, passa alla riga inferiore. In caso contrario, è ciò che accade quando si sostituisce lo spazio con nulla, rimane sulla prima riga.


Cosa fanno gli ,s?
programmatore

@ programmer5000 Ciascuno stampa un carattere.
Martin Ender,

Un consiglio per la stampa di un gran numero di caratteri fino a raggiungere un 0 è quello di fare >:#,_che si potrebbe risparmiare un sacco di byte
MildlyMilquetoast
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.