In molti tipi di carattere (in particolare nel carattere Consolas ), 5 cifre decimali su 10 presentano "buchi". Chiameremo queste cifre sante:
46890
Le 5 cifre empie sono quindi:
12357
Un numero intero può quindi essere classificato come "santo" se contiene solo cifre sante e "empio" altrimenti. Perché -
è empio, nessun numero intero negativo può essere santo.
Gli interi sacri possono essere ulteriormente classificati in base a quanti buchi hanno. Ad esempio, le seguenti cifre hanno una santità di 1:
469
E queste cifre hanno una santità di 2:
80
Diciamo che la santità complessiva di un numero intero è la somma della santità delle sue cifre. Pertanto, 80
avrebbe una santità di 4 e 99
una santità di 2.
La sfida
Dato due numeri interi n > 0
e h > 0
, genera il n
numero intero santo la cui santità è almeno h
. Si può presumere che gli input e gli output non siano maggiori dell'intero massimo rappresentabile nella propria lingua o 2^64 - 1
, a seconda di quale sia il minore.
Ecco un elenco dei primi 25 numeri interi santi con santità h >= 1
, come riferimento:
0, 4, 6, 8, 9, 40, 44, 46, 48, 49, 60, 64, 66, 68, 69, 80, 84, 86, 88, 89, 90, 94, 96, 98, 99
I primi 25 numeri interi santi con santità h >= 2
sono:
0, 8, 40, 44, 46, 48, 49, 60, 64, 66, 68, 69, 80, 84, 86, 88, 89, 90, 94, 96, 98, 99, 400, 404, 406
0
ha una santità di due" prima di fare finalmente clic sul link di Wikipedia per Consolas