Hex words: Difference between revisions
Content added Content deleted
(Created Nim solution.) |
(→{{header|Ruby}}: Add Ruby) |
||
Line 1,486: | Line 1,486: | ||
bade ➡ 47838 ➡ 3 |
bade ➡ 47838 ➡ 3 |
||
abed ➡ 44013 ➡ 3</pre> |
abed ➡ 44013 ➡ 3</pre> |
||
=={{header|Ruby}}== |
|||
<syntaxhighlight lang="ruby" line>def report(a) |
|||
puts |
|||
a.each {|hw| puts "%6s %8d %d" % hw} |
|||
puts "Total count of these words: #{a.size}" |
|||
end |
|||
hexwords = File.readlines("unixdict.txt", chomp: true).reject{|w| w.size < 4 || w.match?(/[^abcdef]/) } |
|||
res = hexwords.map{|hw| [hw, hw.to_i(16), 1 + (hw.to_i(16) - 1) % 9]}.sort_by(&:last) |
|||
report( res ) |
|||
report( res.reject{|hw| hw[0].chars.uniq.size < 4}.sort_by{|w| -w[1]} ) |
|||
</syntaxhighlight> |
|||
{{out}} |
|||
<pre> ababa 703162 1 |
|||
abbe 43966 1 |
|||
dada 56026 1 |
|||
deaf 57007 1 |
|||
decade 14600926 1 |
|||
cede 52958 2 |
|||
feed 65261 2 |
|||
abed 44013 3 |
|||
added 712173 3 |
|||
bade 47838 3 |
|||
beebe 782014 4 |
|||
decca 912586 4 |
|||
dade 56030 5 |
|||
bead 48813 6 |
|||
deface 14613198 6 |
|||
babe 47806 7 |
|||
fade 64222 7 |
|||
dead 57005 8 |
|||
efface 15727310 8 |
|||
facade 16435934 8 |
|||
accede 11325150 9 |
|||
beef 48879 9 |
|||
cafe 51966 9 |
|||
dacca 896202 9 |
|||
deed 57069 9 |
|||
face 64206 9 |
|||
Total count of these words: 26 |
|||
facade 16435934 8 |
|||
efface 15727310 8 |
|||
deface 14613198 6 |
|||
decade 14600926 1 |
|||
accede 11325150 9 |
|||
decca 912586 4 |
|||
fade 64222 7 |
|||
face 64206 9 |
|||
deaf 57007 1 |
|||
cafe 51966 9 |
|||
bead 48813 6 |
|||
bade 47838 3 |
|||
abed 44013 3 |
|||
Total count of these words: 13 |
|||
</pre> |
|||
=={{header|V (Vlang)}}== |
=={{header|V (Vlang)}}== |