diff options
| -rwxr-xr-x | challenge-192/feng-chang/raku/ch-1.raku | 5 | ||||
| -rwxr-xr-x | challenge-192/feng-chang/raku/ch-1a.raku | 5 | ||||
| -rwxr-xr-x | challenge-192/feng-chang/raku/ch-2.raku | 7 |
3 files changed, 17 insertions, 0 deletions
diff --git a/challenge-192/feng-chang/raku/ch-1.raku b/challenge-192/feng-chang/raku/ch-1.raku new file mode 100755 index 0000000000..e3766da4dc --- /dev/null +++ b/challenge-192/feng-chang/raku/ch-1.raku @@ -0,0 +1,5 @@ +#!/bin/env raku + +unit sub MAIN(UInt:D \N); + +put N.base(2).comb.map(1-*).join.parse-base(2); diff --git a/challenge-192/feng-chang/raku/ch-1a.raku b/challenge-192/feng-chang/raku/ch-1a.raku new file mode 100755 index 0000000000..809267e71d --- /dev/null +++ b/challenge-192/feng-chang/raku/ch-1a.raku @@ -0,0 +1,5 @@ +#!/bin/env raku + +unit sub MAIN(UInt:D \N); + +put ('1' x N.base(2).chars).parse-base(2) - N; diff --git a/challenge-192/feng-chang/raku/ch-2.raku b/challenge-192/feng-chang/raku/ch-2.raku new file mode 100755 index 0000000000..2bf4d9c0a1 --- /dev/null +++ b/challenge-192/feng-chang/raku/ch-2.raku @@ -0,0 +1,7 @@ +#!/bin/env raku + +unit sub MAIN(*@N where .all ~~ UInt); + +put @N.sum %% +@N ?? + (^+@N).map({ abs((@N[$_] - @N.sum div +@N) * ($_ - (+@N - 1) / 2)) }).sum !! + -1; |
