diff options
| -rw-r--r-- | challenge-260/arne-sommer/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-260/arne-sommer/raku/ch-1.raku | 9 | ||||
| -rwxr-xr-x | challenge-260/arne-sommer/raku/ch-2.raku | 11 | ||||
| -rwxr-xr-x | challenge-260/arne-sommer/raku/dictionary-rank | 11 | ||||
| -rwxr-xr-x | challenge-260/arne-sommer/raku/unique-occurences | 9 |
5 files changed, 41 insertions, 0 deletions
diff --git a/challenge-260/arne-sommer/blog.txt b/challenge-260/arne-sommer/blog.txt new file mode 100644 index 0000000000..66b2db3d3f --- /dev/null +++ b/challenge-260/arne-sommer/blog.txt @@ -0,0 +1 @@ +https://raku-musings.com/unique-rank.html diff --git a/challenge-260/arne-sommer/raku/ch-1.raku b/challenge-260/arne-sommer/raku/ch-1.raku new file mode 100755 index 0000000000..9c048e2dc4 --- /dev/null +++ b/challenge-260/arne-sommer/raku/ch-1.raku @@ -0,0 +1,9 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int && @ints.elems > 0, :v(:$verbose)); + +my @freq = @ints.Bag.values; + +say ": Frequencies: @freq[]" if $verbose; + +say @freq.repeated ?? 0 !! 1; diff --git a/challenge-260/arne-sommer/raku/ch-2.raku b/challenge-260/arne-sommer/raku/ch-2.raku new file mode 100755 index 0000000000..ca37cf732a --- /dev/null +++ b/challenge-260/arne-sommer/raku/ch-2.raku @@ -0,0 +1,11 @@ +#! /usr/bin/env raku + +unit sub MAIN ($word where $word.chars > 0, :v(:$verbose)); + +my $perm = $word.comb.sort.permutations>>.join.unique; + +say ": Permutations: $perm[]" if $verbose; + +my $index = ($perm.grep: $word, :k).first; + +say $index +1; diff --git a/challenge-260/arne-sommer/raku/dictionary-rank b/challenge-260/arne-sommer/raku/dictionary-rank new file mode 100755 index 0000000000..ca37cf732a --- /dev/null +++ b/challenge-260/arne-sommer/raku/dictionary-rank @@ -0,0 +1,11 @@ +#! /usr/bin/env raku + +unit sub MAIN ($word where $word.chars > 0, :v(:$verbose)); + +my $perm = $word.comb.sort.permutations>>.join.unique; + +say ": Permutations: $perm[]" if $verbose; + +my $index = ($perm.grep: $word, :k).first; + +say $index +1; diff --git a/challenge-260/arne-sommer/raku/unique-occurences b/challenge-260/arne-sommer/raku/unique-occurences new file mode 100755 index 0000000000..9c048e2dc4 --- /dev/null +++ b/challenge-260/arne-sommer/raku/unique-occurences @@ -0,0 +1,9 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where all(@ints) ~~ Int && @ints.elems > 0, :v(:$verbose)); + +my @freq = @ints.Bag.values; + +say ": Frequencies: @freq[]" if $verbose; + +say @freq.repeated ?? 0 !! 1; |
