diff options
Diffstat (limited to 'challenge-322/arne-sommer/raku/rank-array')
| -rwxr-xr-x | challenge-322/arne-sommer/raku/rank-array | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/challenge-322/arne-sommer/raku/rank-array b/challenge-322/arne-sommer/raku/rank-array new file mode 100755 index 0000000000..991a565819 --- /dev/null +++ b/challenge-322/arne-sommer/raku/rank-array @@ -0,0 +1,23 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@ints where @ints.elems > 1 + && all(@ints) ~~ Int, + :v(:$verbose)); + +my @sorted = @ints.sort.squish; + +my %rank; +my $rank = 0; + +for @sorted -> $val +{ + $rank++; + + %rank{$val} = $rank; + + say ": Int $val has rank $rank" if $verbose; +} + +my @rank = @ints.map({ %rank{$_} }); + +say "({ @rank.join(", ") })"; |
