Modifica: permesso di riutilizzare gli spazi bianchi.
Il tuo compito è scrivere n programmi (o funzioni, o corpi di funzioni senza usare parametri o nomi di funzioni) nella stessa lingua. Il k programma dovrebbe produrre il numero (cardinale) k in inglese standard in minuscolo (con una nuova riga finale facoltativa). Quindi il primo programma dovrebbe essere emesso one
, il secondo dovrebbe essere emesso two
, ecc. Per un numero che ha due parti, dovrebbero essere separati da un trattino come twenty-one
.
Ma non ci sono due programmi nella tua presentazione in grado di condividere caratteri non bianchi o bianchi facendo lavori utili. Ad esempio, se il tuo primo programma è giusto "one"
, allora nessuno di"
o
n
e e
può essere riutilizzato negli altri programmi.
È possibile utilizzare caratteri di spazi bianchi (spazi, righe e righe) in due o più programmi, se servono solo come separatori o rientri e non fanno nulla da soli. Quindi non puoi riutilizzarli nella lingua degli spazi bianchi e non puoi usarli nelle stringhe in più di un programma.
È possibile utilizzare solo caratteri ASCII stampabili, schede e nuove righe (inclusi CR e LF). Ogni programma deve contenere almeno 1 carattere.
Il tuo punteggio è la somma di 1 / dimensione del programma ^ 1.5. Il punteggio più alto vince. Puoi utilizzare questo frammento di stack ( o questo codice CJam ) per calcolare il tuo punteggio:
function updatescore(a){var l=a.value.split("\n"),s=0;for(var i=0;i<l.length;i++){var t=l[i].length;t-=t&&l[i][t-1]=="\r";if(t)s+=Math.pow(t,-1.5);}document.getElementById('result').textContent=s;}
<textarea id="input" placeholder="Put your code here, one per line." style="width:100%;height:150px;box-sizing:border-box" oninput="updatescore(this)" onpropertychange="updatescore(this)"></textarea><div>Your score: <span id="result">0</span></div>