diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2021-06-30 12:17:40 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-06-30 12:17:40 +0100 |
| commit | 123bc7f8d4b3a8b803c02a5b524a584c34087b5d (patch) | |
| tree | 16e43405bf54cc413930e90eb4872dece5cc4ced | |
| parent | 1cb28ef7764002e1e4bbb428ce8600b8ef43764a (diff) | |
| parent | d37768e66067a77ea9fa0d99c67304263ec35692 (diff) | |
| download | perlweeklychallenge-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-x | challenge-119/wlmb/perl/ch-2a.pl | 27 |
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; + } +} |
