aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-084/pjdurai/ch-1.p623
-rw-r--r--challenge-086/pjdurai/raku/ch-1.p614
2 files changed, 37 insertions, 0 deletions
diff --git a/challenge-084/pjdurai/ch-1.p6 b/challenge-084/pjdurai/ch-1.p6
new file mode 100644
index 0000000000..4238b4dd7f
--- /dev/null
+++ b/challenge-084/pjdurai/ch-1.p6
@@ -0,0 +1,23 @@
+use Test;
+
+# Positive
+multi solve(Int $N where * >= 0){
+ my $reversed-num = val $N.Str().flip();
+ return 0 if $reversed-num > int32.Range[*-1];
+ $reversed-num;
+}
+
+# Negative
+multi solve(Int $N where * < 0){
+ - solve abs $N;
+}
+
+multi MAIN() {
+ ok solve(1234) == 4321, "1234 => 4321";
+ ok solve(1231230512) == 0, "1231230512 => 0";
+ ok solve(-1234) == -4321, "-1234 => -4321";
+}
+
+multi MAIN(Int $N) {
+ say solve($N);
+}
diff --git a/challenge-086/pjdurai/raku/ch-1.p6 b/challenge-086/pjdurai/raku/ch-1.p6
new file mode 100644
index 0000000000..589694ef63
--- /dev/null
+++ b/challenge-086/pjdurai/raku/ch-1.p6
@@ -0,0 +1,14 @@
+use Test;
+
+sub solve(@N, $A){
+ for @N.combinations: 2 -> @pair {
+ return 1 if abs(@pair[0] - @pair[1]) == $A
+ }
+ return 0;
+}
+
+multi MAIN(){
+ ok solve((1, 5, 2, 9, 7), 6) == 1, "(1, 5, 2, 9, 7), 6) -> 1";
+ ok solve((10, 8, 12, 15, 5), 7 ) == 1, "(10, 8, 12, 15, 5), 7 ) -> 1";
+ ok solve((10, 30, 20, 50, 40), 15) == 0, "(10, 30, 20, 50, 40), 15) -> 0 ";
+}