introduzione
La teoria dei numeri è piena di meraviglie, sotto forma di connessioni inaspettate. Eccone uno.
Due interi sono co-prime se non hanno fattori in comune diverso da 1. Dato un numero N , prendere in considerazione tutti i numeri interi da 1 a N . Disegna due di questi numeri interi a caso (tutti i numeri interi hanno la stessa probabilità di essere selezionati ad ogni sorteggio; i sorteggi sono indipendenti e con sostituzione). Let p denota la probabilità che i due numeri interi selezionati siano primi di primo grado. Quindi p tende a 6 / π 2 ≈ 0,6079 ... come N tende all'infinito.
La sfida
Lo scopo di questa sfida è quello di calcolare p in funzione di N .
Ad esempio, si consideri N = 4. Esistono 16 coppie possibili ottenute dagli interi 1,2,3,4. 11 di queste coppie sono co-prime, ovvero (1,1), (1,2), (1,3), (1,4), (2,1), (3,1), (4,1 ), (2,3), (3,2), (3,4), (4,3). Quindi p è 11/16 = 0.6875 per N = 4.
Il valore esatto di p deve essere calcolato con almeno quattro decimali. Ciò implica che il calcolo deve essere deterministico (al contrario di Monte Carlo). Ma non è necessario che sia un elenco diretto di tutte le coppie come sopra; qualsiasi metodo può essere utilizzato.
È possibile utilizzare argomenti di funzione o stdin / stdout. Se si visualizza l'output, gli zeri finali possono essere omessi. Quindi ad esempio 0.6300può essere visualizzato come 0.63. Dovrebbe essere visualizzato come un numero decimale, non come una frazione (la visualizzazione della stringa 63/100non è consentita).
Il criterio vincente è il minor numero di byte. Non ci sono restrizioni sull'uso delle funzioni integrate.
Casi test
Input / output (sono obbligatori solo quattro decimali, come indicato sopra):
1 / 1.000000000000000
2 / 0.750000000000000
4 / 0.687500000000000
10 / 0.630000000000000
100 / 0.608700000000000
1000 / 0.608383000000000
