diff options
| -rw-r--r-- | challenge-080/simon-proctor/raku/ch-1.raku | 11 | ||||
| -rw-r--r-- | challenge-080/simon-proctor/raku/ch-2.raku | 13 |
2 files changed, 24 insertions, 0 deletions
diff --git a/challenge-080/simon-proctor/raku/ch-1.raku b/challenge-080/simon-proctor/raku/ch-1.raku new file mode 100644 index 0000000000..2b86522724 --- /dev/null +++ b/challenge-080/simon-proctor/raku/ch-1.raku @@ -0,0 +1,11 @@ +#!/usr/bin/env raku + +use v6; + +#| Given a list of integers find the first positive integer not in the list. +sub MAIN ( + *@N where { $_.all ~~ Int } #= List of integers +) { + say (1...*).first( * !~~ any(@N) ); + +} diff --git a/challenge-080/simon-proctor/raku/ch-2.raku b/challenge-080/simon-proctor/raku/ch-2.raku new file mode 100644 index 0000000000..8da6fa6e0c --- /dev/null +++ b/challenge-080/simon-proctor/raku/ch-2.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku + +use v6; + +#| Given a list of scores work out how many candies you need given these rules : +#| a) You must given at least one candy to each candidate. +#| b) Candidate with higher ranking get more candies than their mmediate neighbors on either side. +sub MAIN ( + *@N where { $_.all ~~ Int } #= List of scores +) { + my $max = @N.max + 1; + say [+] ($max, |@N, $max).rotor(3 => -2).map( -> ($l, $c, $r ) { [+] ($c > $l, 1, $c > $r ) } ) +} |
