aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-06-30 12:17:40 +0100
committerGitHub <noreply@github.com>2021-06-30 12:17:40 +0100
commit123bc7f8d4b3a8b803c02a5b524a584c34087b5d (patch)
tree16e43405bf54cc413930e90eb4872dece5cc4ced
parent1cb28ef7764002e1e4bbb428ce8600b8ef43764a (diff)
parentd37768e66067a77ea9fa0d99c67304263ec35692 (diff)
downloadperlweeklychallenge-club-123bc7f8d4b3a8b803c02a5b524a584c34087b5d.tar.gz
perlweeklychallenge-club-123bc7f8d4b3a8b803c02a5b524a584c34087b5d.tar.bz2
perlweeklychallenge-club-123bc7f8d4b3a8b803c02a5b524a584c34087b5d.zip
Merge pull request #4382 from wlmb/challenges
Add alternative solution to ch-2
-rwxr-xr-xchallenge-119/wlmb/perl/ch-2a.pl27
1 files changed, 27 insertions, 0 deletions
diff --git a/challenge-119/wlmb/perl/ch-2a.pl b/challenge-119/wlmb/perl/ch-2a.pl
new file mode 100755
index 0000000000..83b23d1370
--- /dev/null
+++ b/challenge-119/wlmb/perl/ch-2a.pl
@@ -0,0 +1,27 @@
+#!/usr/bin/env perl
+# Perl weekly challenge 119
+# Task 2: sequence without 1-on-1
+#
+# See https://wlmb.github.io/2021/06/28/PWC119/#task-2-sequence-without-1-on-1
+
+use strict;
+use warnings;
+use v5.12;
+use integer;
+
+map {say "Input: $_, Output: ", get($_)} @ARGV;
+sub get {
+ my $want=shift;
+ my $r="1";
+ $r=increment($r) while($r=~/11/ || --$want > 0);
+ $r;
+}
+sub increment {
+ my $r=shift;
+ while(1){
+ $r=~/(.*)(.)$/;
+ my $high=$1||0;
+ my $low=$2+1;
+ return $low>3?increment($high)."1":$high?$high.$low:$low;
+ }
+}