Achilles numbers: Difference between revisions
Content added Content deleted
m (→{{header|Perl}}: minor simplifications) |
(Added Sidef) |
||
Line 3,275: | Line 3,275: | ||
Elapsed time: 12608 milliseconds |
Elapsed time: 12608 milliseconds |
||
</pre> |
|||
=={{header|Sidef}}== |
|||
<syntaxhighlight lang="ruby">var P = 2.powerful(1e9) |
|||
var achilles = Set(P.grep{ !.is_power }...) |
|||
var strong_achilles = achilles.grep { achilles.has(.phi) } |
|||
say "First 50 Achilles numbers:" |
|||
achilles.sort.first(50).slices(10).each { .map{'%4s'%_}.join(' ').say } |
|||
say "\nFirst 30 strong Achilles numbers:" |
|||
strong_achilles.sort.first(30).slices(10).each { .map{'%5s'%_}.join(' ').say } |
|||
say "\nNumber of Achilles numbers with:" |
|||
achilles.to_a.group_by{.len}.sort_by{|k| k.to_i }.each_2d{|a,b| |
|||
say "#{a} digits: #{b.len}" |
|||
}</syntaxhighlight> |
|||
{{out}} |
|||
<pre> |
|||
First 50 Achilles numbers: |
|||
72 108 200 288 392 432 500 648 675 800 |
|||
864 968 972 1125 1152 1323 1352 1372 1568 1800 |
|||
1944 2000 2312 2592 2700 2888 3087 3200 3267 3456 |
|||
3528 3872 3888 4000 4232 4500 4563 4608 5000 5292 |
|||
5324 5400 5408 5488 6075 6125 6272 6728 6912 7200 |
|||
First 30 strong Achilles numbers: |
|||
500 864 1944 2000 2592 3456 5000 10125 10368 12348 |
|||
12500 16875 19652 19773 30375 31104 32000 33275 37044 40500 |
|||
49392 50000 52488 55296 61731 64827 67500 69984 78608 80000 |
|||
Number of Achilles numbers with: |
|||
2 digits: 1 |
|||
3 digits: 12 |
|||
4 digits: 47 |
|||
5 digits: 192 |
|||
6 digits: 664 |
|||
7 digits: 2242 |
|||
8 digits: 7395 |
|||
9 digits: 24008 |
|||
</pre> |
</pre> |
||