aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-07-04 14:37:05 +0100
committerGitHub <noreply@github.com>2021-07-04 14:37:05 +0100
commite4d22b59db4109ebbec89aba58f40e683125f582 (patch)
tree6ac6bdc5ce08633f7a66af9fd803d2f7363546ad
parent7626e3d46fb7c7302c6f12be451ce6787d4f28ae (diff)
parent11fdc8a380613683c8642b7e397cb296fdf1fd4f (diff)
downloadperlweeklychallenge-club-e4d22b59db4109ebbec89aba58f40e683125f582.tar.gz
perlweeklychallenge-club-e4d22b59db4109ebbec89aba58f40e683125f582.tar.bz2
perlweeklychallenge-club-e4d22b59db4109ebbec89aba58f40e683125f582.zip
Merge pull request #4409 from luc65r/119
Challenge 119
-rw-r--r--challenge-119/luc65r/myrddin/ch-1.myr6
-rw-r--r--challenge-119/luc65r/myrddin/ch-2.myr30
-rwxr-xr-xchallenge-119/luc65r/raku/ch-1.raku5
-rwxr-xr-xchallenge-119/luc65r/raku/ch-2.raku6
4 files changed, 47 insertions, 0 deletions
diff --git a/challenge-119/luc65r/myrddin/ch-1.myr b/challenge-119/luc65r/myrddin/ch-1.myr
new file mode 100644
index 0000000000..0b5df84ec8
--- /dev/null
+++ b/challenge-119/luc65r/myrddin/ch-1.myr
@@ -0,0 +1,6 @@
+use std
+
+const main = {args : byte[:][:] -> void
+ var n : uint8 = std.get(std.intparse(args[1]))
+ std.put("{}\n", n >> 4 | n << 4)
+}
diff --git a/challenge-119/luc65r/myrddin/ch-2.myr b/challenge-119/luc65r/myrddin/ch-2.myr
new file mode 100644
index 0000000000..e0e15338b8
--- /dev/null
+++ b/challenge-119/luc65r/myrddin/ch-2.myr
@@ -0,0 +1,30 @@
+use std
+
+const main = {args : byte[:][:] -> void
+ var a : uint64 = 1
+ for var n : uint64 = std.get(std.intparse(args[1])); n > 1; n--
+ a = next(a)
+ ;;
+ std.put("{}\n", a)
+}
+
+const next = {n : uint64 -> uint64
+ n++
+ for var a = 1; (n / a) % 10 == 4;
+ n -= 3 * a
+ a *= 10
+ n += a
+ ;;
+ var p = false
+ for var a = 1; n / a > 0; a *= 10
+ if (n / a) % 10 == 1
+ if p
+ -> next(n)
+ ;;
+ p = true
+ else
+ p = false
+ ;;
+ ;;
+ -> n
+}
diff --git a/challenge-119/luc65r/raku/ch-1.raku b/challenge-119/luc65r/raku/ch-1.raku
new file mode 100755
index 0000000000..e43b938597
--- /dev/null
+++ b/challenge-119/luc65r/raku/ch-1.raku
@@ -0,0 +1,5 @@
+#!/usr/bin/env raku
+
+sub MAIN(UInt:D $n where * < 256) {
+ say $n +> 4 +| $n +< 4 +& 0xf0;
+}
diff --git a/challenge-119/luc65r/raku/ch-2.raku b/challenge-119/luc65r/raku/ch-2.raku
new file mode 100755
index 0000000000..dea0af3a18
--- /dev/null
+++ b/challenge-119/luc65r/raku/ch-2.raku
@@ -0,0 +1,6 @@
+#!/usr/bin/env raku
+
+sub MAIN(UInt:D $n where * > 0) {
+ my @s = grep { ! / 0 | 11 / }, map { .base: 4 }, 1 .. ∞;
+ say @s[$n - 1];
+}