diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2024-08-04 21:57:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-04 21:57:42 +0100 |
| commit | 319fa5ea206dcaab749b20d0a8578479fb894d3c (patch) | |
| tree | d6c79151591060b8d681955a280e9a0cd461d281 | |
| parent | ff07d8b2d6ff3ba29ee69683af906e6d63c98391 (diff) | |
| parent | 44510b53f885b5a7f1f028a40bf347875fb7cd18 (diff) | |
| download | perlweeklychallenge-club-319fa5ea206dcaab749b20d0a8578479fb894d3c.tar.gz perlweeklychallenge-club-319fa5ea206dcaab749b20d0a8578479fb894d3c.tar.bz2 perlweeklychallenge-club-319fa5ea206dcaab749b20d0a8578479fb894d3c.zip | |
Merge pull request #10540 from adamcrussell/challenge-280
initial commit
| -rw-r--r-- | challenge-280/adam-russell/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-280/adam-russell/perl/ch-1.pl | 22 | ||||
| -rw-r--r-- | challenge-280/adam-russell/perl/ch-2.pl | 27 |
3 files changed, 50 insertions, 0 deletions
diff --git a/challenge-280/adam-russell/blog.txt b/challenge-280/adam-russell/blog.txt new file mode 100644 index 0000000000..68b8a77743 --- /dev/null +++ b/challenge-280/adam-russell/blog.txt @@ -0,0 +1 @@ +http://www.rabbitfarm.com/cgi-bin/blosxom/perl/2024/08/04 diff --git a/challenge-280/adam-russell/perl/ch-1.pl b/challenge-280/adam-russell/perl/ch-1.pl new file mode 100644 index 0000000000..255318b3b5 --- /dev/null +++ b/challenge-280/adam-russell/perl/ch-1.pl @@ -0,0 +1,22 @@ + + +use v5.38; + + +sub twice_appearance{ + my($s) = @_; + my @a = (); + do{ + $a[ord($_)]++; + return $_ if $a[ord($_)] == 2; + } for split //, $s; + return undef; +} + + +MAIN:{ + say twice_appearance q/acbddbca/; + say twice_appearance q/abccd/; + say twice_appearance q/abcdabbb/; +} + diff --git a/challenge-280/adam-russell/perl/ch-2.pl b/challenge-280/adam-russell/perl/ch-2.pl new file mode 100644 index 0000000000..7f6633a0f9 --- /dev/null +++ b/challenge-280/adam-russell/perl/ch-2.pl @@ -0,0 +1,27 @@ + + +use v5.38; + + +sub count_asterisks{ + my($s) = shift; + my $score = 0; + my @asterisks = (); + my @s = split /\|/, $s; + { + my $x = shift @s; + my $y = shift @s; + my @a = $x =~ m/(\*)/g if $x; + push @asterisks, @a if @a > 0; + redo if @s >= 1; + } + return 0 + @asterisks; +} + + +MAIN:{ + say count_asterisks q/p|*e*rl|w**e|*ekly|/; + say count_asterisks q/perl/; + say count_asterisks q/th|ewe|e**|k|l***ych|alleng|e/; +} + |
