aboutsummaryrefslogtreecommitdiff
path: root/challenge-197/mark-anderson/raku/ch-1.raku
blob: 07d7e9cfb5944d2151a33915dd8f29838bad822f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/env raku
use Test;

is-deeply move-zero(1,0,3,0,0,5), (1,3,5,0,0,0);
is-deeply move-zero(1,6,4),       (1,6,4);
is-deeply move-zero(0,1,0,2,0),   (1,2,0,0,0);

sub move-zero(*@arr)
{
    my $c := classify { $_ == 0 ?? 'zeros' !! 'non-zeros' }, @arr;
    $c<non-zeros>.append: flat $c<zeros> if $c<zeros>;
    $c<non-zeros>.List
}