aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-05-30 01:21:04 +0100
committerGitHub <noreply@github.com>2022-05-30 01:21:04 +0100
commit698a2a8bd74b1d65854aa73950207729028983c3 (patch)
tree64806d92f60010e29c2aae932cb2e547e9584742
parent1682f9141c42d02acba287cac8adc51f4deb9f84 (diff)
parentc5df5d6e0928d54f00acb1ff61abd43a36ebef1d (diff)
downloadperlweeklychallenge-club-698a2a8bd74b1d65854aa73950207729028983c3.tar.gz
perlweeklychallenge-club-698a2a8bd74b1d65854aa73950207729028983c3.tar.bz2
perlweeklychallenge-club-698a2a8bd74b1d65854aa73950207729028983c3.zip
Merge pull request #6179 from Hiranyaloka/ch-166
ch-166; Hexadecimal Words and K-Directory Diff
-rwxr-xr-xchallenge-166/rick-bychowski/raku/ch-1.raku25
-rwxr-xr-xchallenge-166/rick-bychowski/raku/ch-2.raku33
-rw-r--r--challenge-166/rick-bychowski/raku/hexwords.txt776
3 files changed, 834 insertions, 0 deletions
diff --git a/challenge-166/rick-bychowski/raku/ch-1.raku b/challenge-166/rick-bychowski/raku/ch-1.raku
new file mode 100755
index 0000000000..481c63410f
--- /dev/null
+++ b/challenge-166/rick-bychowski/raku/ch-1.raku
@@ -0,0 +1,25 @@
+#!/usr/bin/env raku
+use Data::Dump;
+# Hexadecimal Words
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-166/
+# Allows unlimited o => 0 substitutions
+# Limits 'stli' => '571' translations to two or less
+
+sub MAIN(Str $dict where *.IO.f = '../../../data/dictionary.txt') {
+ for $dict.IO.lines -> $word {
+ next unless 1 < $word.chars < 9;
+ my @hex;
+ my $trans = 0;
+ loop (my $i = 1; $i <= $word.chars; $i++) {
+ my $l = $word.split('')[$i];
+ last unless $l ~~ /<[ a b c d e f o l i s t ]>/;
+ # Limit translations to 2 or less
+ $trans++ if $l ~~ /<[ l i s t]>/;
+ last if $trans > 2;
+ @hex.push($l);
+ if $i == $word.chars {
+ say "0x" , @hex.join('').trans('ostli' => '0571').uc;
+ }
+ }
+ }
+}
diff --git a/challenge-166/rick-bychowski/raku/ch-2.raku b/challenge-166/rick-bychowski/raku/ch-2.raku
new file mode 100755
index 0000000000..e1a2d6c561
--- /dev/null
+++ b/challenge-166/rick-bychowski/raku/ch-2.raku
@@ -0,0 +1,33 @@
+#!/usr/bin/env raku
+
+sub MAIN( *@dirs ) {
+ my %contents; # %contents{ basename } = dir
+ for @dirs -> $dir {
+ for dir $dir.IO -> $path {
+ my $fn = $path.d ?? $path.basename ~ '/' !! $path.basename;
+ push %contents{ $dir }, $fn;
+ }
+ }
+
+ my $spacer = '------------------------------';
+ for @dirs -> $dir {
+ printf "| %-30s ", $dir;
+ }
+ print "|\n";
+ for @dirs -> $dir {
+ printf "| %-30s ", $spacer;
+ }
+ print "|\n";
+
+ my @filenames = %contents{@dirs}>>.List.flat.unique;
+ for @filenames -> $fn {
+ loop (my $i = 0; $i < @dirs.elems; $i++) {
+ if $fn (elem) %contents{ @dirs[$i] } {
+ printf "| %-30s ", $fn;
+ } else {
+ printf "| %-30s ", "---";
+ }
+ }
+ print "|\n";
+ }
+}
diff --git a/challenge-166/rick-bychowski/raku/hexwords.txt b/challenge-166/rick-bychowski/raku/hexwords.txt
new file mode 100644
index 0000000000..41c60e1b92
--- /dev/null
+++ b/challenge-166/rick-bychowski/raku/hexwords.txt
@@ -0,0 +1,776 @@
+0xABA7E
+0xABA7ED
+0xABA7E5
+0xABB07
+0xABB075
+0xABD0CA7E
+0xABE7
+0xABE75
+0xABE77ED
+0xAB0DE
+0xAB0DE5
+0xAB1E
+0xAB0DE
+0xAB0DE5
+0xACCEDE
+0xACCEDED
+0xACCEDE5
+0xACCE55
+0xACCE55ED
+0xACC01ADE
+0xACC057
+0xACC057ED
+0xACE
+0xACED
+0xACE5
+0xAC0D
+0xAC0D5
+0xAC7
+0xAC7ED
+0xAC75
+0xAD
+0xADD
+0xADDED
+0xADD0C7
+0xADD0C7ED
+0xADD5
+0xAD0
+0xAD0BE
+0xAD0BE5
+0xAD5
+0xAFFAB1E
+0xAFFEC7
+0xAFFEC7ED
+0xAFFEC75
+0xAF0E1D
+0xAF10A7
+0xAF007
+0xA0D
+0xA0DE
+0xA0DED
+0xA0DE5
+0xA0D5
+0xA01
+0xA01ED
+0xA1A5
+0xA1E
+0xA1E5
+0xA11
+0xA10F7
+0xA100F
+0xA150
+0xA170
+0xA5
+0xA50DE
+0xA55
+0xA7
+0xA7E
+0xBABB1E
+0xBABB1ED
+0xBABB1E5
+0xBABE
+0xBABE5
+0xBAB0ED
+0xBAB0E5
+0xBAD
+0xBADDE57
+0xBADE
+0xBAFF1E
+0xBAFF1ED
+0xBAFF1E5
+0xBA01
+0xBA01ED
+0xBA07
+0xBA07ED
+0xBA1D
+0xBA1DED
+0xBA1D5
+0xBA1E
+0xBA1ED
+0xBA1E5
+0xBA11
+0xBA11AD
+0xBA11ED
+0xBA5E
+0xBA5ED
+0xBA5E5
+0xBA50C
+0xBA55
+0xBA57E
+0xBA57ED
+0xBA7
+0xBA75
+0xBA77ED
+0xBE
+0xBEAD
+0xBEADED
+0xBEAD5
+0xBEA57
+0xBEA7
+0xBEA75
+0xBED
+0xBEDDED
+0xBED5
+0xBED50DE
+0xBEE
+0xBEEF
+0xBEEFED
+0xBEEF5
+0xBEE5
+0xBEE7
+0xBEE71E
+0xBEE71ED
+0xBEE75
+0xBEFA11
+0xBEFE11
+0xBEF07
+0xBE1A7ED
+0xBE10E
+0xBE10ED
+0xBE10EF
+0xBE11
+0xBE11ED
+0xBE17
+0xBE17ED
+0xBE5E7
+0xBE50DE
+0xBE57
+0xBE57ED
+0xBE7
+0xBE7A
+0xBE75
+0xB0A5
+0xB0A5ED
+0xB0B
+0xB0B1E
+0xB0B5
+0xB0D
+0xB0DE
+0xB0DE5
+0xB0D5
+0xB01E
+0xB07
+0xB07E
+0xB1AB
+0xB1ABBED
+0xB1AB5
+0xB1ADE
+0xB1ADE5
+0xB1EA7
+0xB1EA7ED
+0xB1ED
+0xB1EED
+0xB1EED5
+0xB10B
+0xB10BBED
+0xB10B5
+0xB10C
+0xB10C5
+0xB100D
+0xB100DED
+0xB100D0ED
+0xB100D5
+0xB107
+0xB0A
+0xB0A5
+0xB0A57
+0xB0A57ED
+0xB0A7
+0xB0A7ED
+0xB0A75
+0xB0B
+0xB0BBED
+0xB0BCA7
+0xB0BCA75
+0xB0B5
+0xB0B51ED
+0xB0DE
+0xB0DED
+0xB0DE5
+0xB0D0CE
+0xB0D0CE5
+0xB0D0E5
+0xB001
+0xB001ED
+0xB01D
+0xB017
+0xB017ED
+0xB00
+0xB00ED
+0xB005
+0xB0057
+0xB0057ED
+0xB007
+0xB007ED
+0xB007EE
+0xB007EE5
+0xB0075
+0xB055
+0xB055ED
+0xCAB
+0xCABBED
+0xCAB1E
+0xCAB1ED
+0xCAB1E5
+0xCAB005E
+0xCAB005E5
+0xCAB5
+0xCACA0
+0xCACA05
+0xCAC70
+0xCAD
+0xCADD0E
+0xCADD0ED
+0xCADD0E5
+0xCADE7
+0xCADE75
+0xCA1F
+0xCA10C0
+0xCA11
+0xCA11ED
+0xCA5CADE
+0xCA5CADED
+0xCA5CADE5
+0xCA5E
+0xCA5ED
+0xCA5E5
+0xCA57
+0xCA57E
+0xCA570FF
+0xCA7
+0xCA75
+0xCC
+0xCEA5E
+0xCEA5ED
+0xCEA5E5
+0xCEDE
+0xCEDED
+0xCEDE5
+0xCE11
+0xCE110
+0xC07E
+0xC07ED
+0xC1AD
+0xC1EA7
+0xC1EF
+0xC1EF5
+0xC1EF7
+0xC10FF
+0xC10D
+0xC10D5
+0xC105E
+0xC105ED
+0xC107
+0xC0A1
+0xC0A1ED
+0xC0A1E5CE
+0xC0A15
+0xC0A57
+0xC0A57ED
+0xC0A7
+0xC0A7ED
+0xC0A75
+0xC0B
+0xC0BA17
+0xC0BB1E
+0xC0B5
+0xC0C0A
+0xC0C0A5
+0xC0D
+0xC0DDED
+0xC0DE
+0xC0DED
+0xC0DE5
+0xC0D5
+0xC0FFEE
+0xC0FFEE5
+0xC001
+0xC001ED
+0xC01
+0xC01D
+0xC01D5
+0xC010C
+0xC017
+0xC00
+0xC00ED
+0xC001
+0xC001ED
+0xC0015
+0xC005
+0xC057
+0xC057ED
+0xC07
+0xC075
+0xC5
+0xDAB
+0xDABBED
+0xDABB1E
+0xDABB1ED
+0xDABB1E5
+0xDAB5
+0xDAD
+0xDADD0E5
+0xDAD5
+0xDAFF0D01
+0xDAF7
+0xDA05
+0xDA7A
+0xDA7ABA5E
+0xDA7E
+0xDA7ED
+0xDA7E5
+0xDEAD
+0xDEADE57
+0xDEAF
+0xDEAFE57
+0xDEA1
+0xDEA15
+0xDEA17
+0xDEBA5E
+0xDEBA5ED
+0xDEBA5E5
+0xDEBA7E
+0xDEBA7ED
+0xDEBA7E5
+0xDEB07
+0xDEB07ED
+0xDEB7
+0xDEB75
+0xDECADE
+0xDECADE5
+0xDECEA5E
+0xDECEA5ED
+0xDECEA5E5
+0xDECE07
+0xDEC0BE1
+0xDEC0DE
+0xDEC0DED
+0xDEC0DE5
+0xDEC0DE
+0xDEC0DED
+0xDEC0DE5
+0xDED0CA7E
+0xDEED
+0xDEEDED
+0xDEED5
+0xDEFACE
+0xDEFACED
+0xDEFACE5
+0xDEFEA7
+0xDEFEA7ED
+0xDEFEA75
+0xDEFECA7E
+0xDEFEC7
+0xDEFEC7ED
+0xDEFEC75
+0xDEF0ED
+0xDEF0E5
+0xDEF01E
+0xDEF01ED
+0xDEF1A7E
+0xDEF1A7ED
+0xDEF1EC7
+0xDEF7
+0xDE0F0ED
+0xDE1E7E
+0xDE1E7ED
+0xDE10
+0xDE17A
+0xDE7EC7
+0xDE7EC7ED
+0xD0A1
+0xD0A1ED
+0xD0CE
+0xD0CED
+0xD0CE5
+0xD0D
+0xD0E
+0xD0ED
+0xD0E5
+0xD0E7
+0xD0E7ED
+0xD00CE5E
+0xD05C
+0xD05C0
+0xD0
+0xD0C01E
+0xD0D0
+0xD0E
+0xD0E5
+0xD01E
+0xD01ED
+0xD01E5
+0xD011
+0xD011ED
+0xD00D1E
+0xD00D1ED
+0xD00D1E5
+0xD05
+0xD05E
+0xD05ED
+0xD05E5
+0xD07
+0xD07E
+0xD07ED
+0xD07E5
+0xD075
+0xD077ED
+0xEA5E
+0xEA5ED
+0xEA5E1
+0xEA5E5
+0xEA57
+0xEA7
+0xEA75
+0xEBB
+0xEBBED
+0xEBB5
+0xEDD0ED
+0xEDD0E5
+0xED0B1E
+0xED0C7
+0xED0F0CE
+0xED07
+0xED07ED
+0xEE1
+0xEE15
+0xEFFEC7
+0xEFFEC7ED
+0xEFFEC75
+0xE1EC7
+0xE1EC7ED
+0xE1F
+0xE15E
+0xFAB1E
+0xFAB1E5
+0xFACADE
+0xFACADE5
+0xFACE
+0xFACED
+0xFACE5
+0xFACE7
+0xFACE7ED
+0xFACE75
+0xFAC0A1
+0xFAC01E
+0xFAC7
+0xFAC75
+0xFAD
+0xFADE
+0xFADED
+0xFADE5
+0xFAD5
+0xFA01
+0xFA01ED
+0xFA11
+0xFA15E
+0xFA57
+0xFA57ED
+0xFA7
+0xFA7A1
+0xFA7E
+0xFA7ED
+0xFA7E5
+0xFA75
+0xFEA57
+0xFEA57ED
+0xFEA7
+0xFEA75
+0xFECE5
+0xFED
+0xFED5
+0xFEE
+0xFEEB1E
+0xFEED
+0xFEED5
+0xFEE1
+0xFEE15
+0xFEE5
+0xFEE7
+0xFE11
+0xFE11ED
+0xFE17
+0xFE17ED
+0xFE7A1
+0xFE7ED
+0xFE70D
+0xF0A5C0
+0xF0B
+0xF0BBED
+0xF0B5
+0xF0DD1E
+0xF0DD1ED
+0xF0E1D
+0xF0E1DED
+0xF01E
+0xF01ED
+0xF07
+0xF1A7
+0xF1EA
+0xF1EA5
+0xF1ED
+0xF1EE
+0xF1EECE
+0xF1EECED
+0xF1EECE5
+0xF1EE5
+0xF1EE7
+0xF1EE7ED
+0xF10ED
+0xF10A7
+0xF10A7ED
+0xF100D
+0xF100DED
+0xF100D5
+0xF0A1
+0xF0A1ED
+0xF0A15
+0xF0CA1
+0xF0E
+0xF0E5
+0xF00B1E
+0xF001
+0xF001ED
+0xF01D
+0xF01DED
+0xF01D5
+0xF00D
+0xF00D5
+0xF001
+0xF001ED
+0xF0015
+0xF007
+0xF007ED
+0xF0075
+0xFE7E
+0xFE7E5
+0x0CE
+0x0CED
+0x0CE5
+0x0D
+0x0DEA
+0x0DEA1
+0x0DEA5
+0x0D1E
+0x0D1ED
+0x0D01
+0x0F
+0x0F5
+0x00
+0x007A
+0x05
+0x07
+0x1AB
+0x1ABE1
+0x1ABE1ED
+0x1AB5
+0x1ACE
+0x1ACED
+0x1ACE5
+0x1AD
+0x1ADE
+0x1ADED
+0x1ADE5
+0x1AD1E
+0x1AD1ED
+0x1AD5
+0x1A0D
+0x1A7E
+0x1EAD
+0x1EADED
+0x1EAD5
+0x1EAF
+0x1EAFED
+0x1EAF5
+0x1EA5E
+0x1EA5ED
+0x1ED
+0x1EE
+0x1EF7
+0x1E7
+0x10CE
+0x10D
+0x10E
+0x10ED
+0x10FE
+0x10AD
+0x10ADAB1E
+0x10ADED
+0x10AD5
+0x10AF
+0x10AFED
+0x10AF5
+0x10B
+0x10BBED
+0x10BB0ED
+0x10BE
+0x10BE5
+0x10B5
+0x10CA1
+0x10CA1E
+0x10CA7E
+0x10CA7ED
+0x10F7
+0x10F7ED
+0x1005E
+0x1005ED
+0x1007
+0x1007ED
+0x105E
+0x107
+0x0AF
+0x0AF5
+0x0A5E5
+0x0BE5E
+0x0B0E
+0x0B0E5
+0x0C7A1
+0x0DD
+0x0DDE57
+0x0DD5
+0x0DE
+0x0DE5
+0x0F
+0x0FF
+0x0FFBEA7
+0x0FFBEA75
+0x0FFED
+0x0FF0CE
+0x0FF0CE5
+0x0FF10AD
+0x0FF5
+0x0FF5E7
+0x001
+0x001ED
+0x01D
+0x00D1E5
+0x5AC
+0x5AC5
+0x5AD
+0x5ADD1E
+0x5ADD1ED
+0x5ADE5
+0x5AFE
+0x5AFE5
+0x5A0D
+0x5A1AD
+0x5A1E
+0x5A7
+0x5CAB
+0x5CABBED
+0x5CAB5
+0x5CAFF01D
+0x5CA1D
+0x5CA1DED
+0x5CA1E
+0x5CA1ED
+0x5C0FF
+0x5C0FFED
+0x5C0FF5
+0x5C01D
+0x5C01DED
+0x5C007
+0x5C007ED
+0x5EA
+0x5EAF00D
+0x5EA1
+0x5EA1ED
+0x5EA5
+0x5EA7
+0x5EA7ED
+0x5EC
+0x5ECEDE
+0x5ECEDED
+0x5ECEDE5
+0x5EC7
+0x5EDA7E
+0x5EDA7ED
+0x5EE
+0x5EED
+0x5EEDED
+0x5EED5
+0x5EE5
+0x5E1F
+0x5E7
+0x50C
+0x50DE
+0x50DED
+0x51AB
+0x51ABBED
+0x51ED
+0x51EDDED
+0x510B
+0x50
+0x50B
+0x50BBED
+0x50B5
+0x50D
+0x50DA
+0x50DA5
+0x50DDED
+0x50D5
+0x50FA
+0x50FA5
+0x50F7
+0x501ACE
+0x501ACED
+0x501D
+0x501E
+0x501ED
+0x5010
+0x5010ED
+0x5007
+0x57AB
+0x57ABBED
+0x57AFF
+0x57AFFED
+0x5700D
+0x7AB
+0x7ABBED
+0x7AB1E
+0x7AB1ED
+0x7AB00
+0x7AB00ED
+0x7AB005
+0x7AB5
+0x7AC0
+0x7AC05
+0x7AC7
+0x7A1C
+0x7A1E
+0x7EA
+0x7EA5
+0x7EA5E
+0x7EA5ED
+0x7EA7
+0x7EE
+0x7EED
+0x7EE5
+0x70DE
+0x70DED
+0x70E
+0x70ED
+0x70FF
+0x70FFED
+0x70
+0x70AD
+0x70AD5
+0x70BACC0
+0x70BACC05
+0x70DD1E
+0x70DD1ED
+0x70E
+0x70ED
+0x70E5
+0x70FFEE
+0x70FFEE5
+0x701D
+0x700
+0x7001
+0x7001ED
+0x7007
+0x7007ED
+0x707
+0x707E
+0x707ED
+0.983335977