Humble numbers: Difference between revisions
m
→{{header|Mathematica}}
(added Mathematica solution) |
|||
Line 3,337:
1767 have 9 digits</pre>
=={{header|Mathematica}}/{{header|Wolfram Language}}==
Create a simple function which efficiently generates humble numbers up to an inputted max number, then call it twice to generate the output. Finds the number of humble numbers with digits up to 100 in 5 minutes.
<lang Mathematica>HumbleGenerator[max_] :=
Sort[Flatten@ParallelTable[▼
▲ Sort[Flatten@
2^i 3^j 5^k 7^m, {i, 0, Log[2, max]}, {j, 0, Log[3, max/2^i]}, {k,
0, Log[5, max/(2^i 3^j)]}, {m, 0, Log[7, max/(2^i 3^j 5^k)]}]]
Line 3,350 ⟶ 3,348:
"\nDigits\[Rule]Count",
Rule @@@ Tally[IntegerLength /@ Drop[HumbleGenerator[10^100], -1]] //
Column} // Column</lang>
{{out}}
<pre style="height:64ex;overflow:scroll">First 50 Humble Numbers:
{1,2,3,4,5,6,7,8,9,10,12,14,15,16,18,20,21,24,25,27,28,30,32,35,36,40,42,45,48,49,50,54,56,60,63,64,70,72,75,80,81,84,90,96,98,100,105,108,112,120}
Line 3,458 ⟶ 3,454:
98->1886590
99->1944540
100->2003661</pre>
=={{header|Nim}}==
|