aboutsummaryrefslogtreecommitdiff
path: root/challenge-260/barroff/raku/ch-1.p6
blob: de0c15d531a1210ce0ad03d14f17fc1aa4fb9bba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env raku

use v6.d;

sub unique-occurrences(@ints --> Int:D) {
    my @bag_values = Bag(@ints).values;
    @bag_values.unique.elems == @bag_values.elems ?? 1 !! 0;
}

#| Run test cases
multi sub MAIN('test') {
    use Test;
    plan 3;

    is unique-occurrences([1,2,2,1,1,3]), 1, 'works for (1,2,2,1,1,3)';
    is unique-occurrences([1,2,3]), 0, 'works for (1,2,3)';
    is unique-occurrences([-2,0,1,-2,1,1,0,1,-2,9]), 1,
        'works for (-2,0,1,-2,1,1,0,1,-2,9)';
}

#| Take user provided number like 10 1 111 24 1000
multi sub MAIN(*@ints) {
    say unique-occurrences(@ints);
}