La Bibbia è uno dei libri più influenti mai scritti e comunemente citato come il libro più venduto di tutti i tempi . È stato scritto da circa 40 autori diversi nel corso di centinaia di anni prima di essere compilato nella sua forma attuale. Ma la cosa interessante di The Bible è il modo in cui è divisa. È diviso in 2 diversi testamenti, che sono suddivisi in 66 libri più piccoli, che sono ciascuno suddiviso in capitoli più piccoli, che sono ciascuno suddiviso in versi individuali.
Ho pensato che sarebbe stata una sfida divertente provare a codificare il numero di capitoli in ciascun libro nel codice più breve possibile. Quindi, per la sfida di oggi, devi scrivere un programma o una funzione che accetta uno dei libri come input e genera il numero di capitoli in quel libro secondo The King James Version .
È possibile prendere IO in qualsiasi formato ragionevole, ad esempio leggere / scrivere STDIN / STDOUT o un file, sono ammessi argomenti di funzione / valori di ritorno, richiesta all'utente, ecc. L'input sarà sempre uno dei 66 libri di The Bible, e solo in minuscolo. Ciò significa che se ti viene dato qualsiasi altro input, è consentito un comportamento indefinito. Poiché ci sono solo 66 possibili input e output, sono tutti forniti qui, secondo la pagina di Wikipedia sui capitoli della Bibbia in The King James Version :
genesis 50
exodus 40
leviticus 27
numbers 36
deuteronomy 34
joshua 24
judges 21
ruth 4
1 samuel 31
2 samuel 24
1 kings 22
2 kings 25
1 chronicles 29
2 chronicles 36
ezra 10
nehemiah 13
esther 10
job 42
psalms 150
proverbs 31
ecclesiastes 12
song of solomon 8
isaiah 66
jeremiah 52
lamentations 5
ezekiel 48
daniel 12
hosea 14
joel 3
amos 9
obadiah 1
jonah 4
micah 7
nahum 3
habakkuk 3
zephaniah 3
haggai 2
zechariah 14
malachi 4
matthew 28
mark 16
luke 24
john 21
acts 28
romans 16
1 corinthians 16
2 corinthians 13
galatians 6
ephesians 6
philippians 4
colossians 4
1 thessalonians 5
2 thessalonians 3
1 timothy 6
2 timothy 4
titus 3
philemon 1
hebrews 13
james 5
1 peter 5
2 peter 3
1 john 5
2 john 1
3 john 1
jude 1
revelation 22
Poiché questa sfida consiste nel trovare il modo ottimale per codificare ogni nome di libro e conteggio di capitoli, non è consentito l'uso di alcun builtin che fornisca informazioni sulla Bibbia. Tuttavia, poiché sarebbe interessante vedere quali lingue hanno tali builtin, sentiti libero di condividere una seconda versione non competitiva insieme alla tua risposta. Anche il recupero di informazioni da fonti esterne non è consentito (nessuna delle scappatoie standard è consentita, ma ho pensato che sarebbe utile menzionarlo esplicitamente).
Come al solito, si tratta di una sfida di code-golf , quindi cerca di creare il programma più breve possibile (misurato in byte) il più possibile. Divertiti a giocare a golf!
enklact
uscire da questa sfida ma non posso ...