aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xchallenge-280/nelo-tovar/bash/ch-1.sh33
-rw-r--r--challenge-280/nelo-tovar/perl/ch-1.pl35
-rw-r--r--challenge-280/nelo-tovar/perl/ch-2.pl30
3 files changed, 98 insertions, 0 deletions
diff --git a/challenge-280/nelo-tovar/bash/ch-1.sh b/challenge-280/nelo-tovar/bash/ch-1.sh
new file mode 100755
index 0000000000..aecb3d56b3
--- /dev/null
+++ b/challenge-280/nelo-tovar/bash/ch-1.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+#
+# The Weekly Challenge 280 - By Nelo Tovar
+#
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-280/
+#
+# Task 1 - Twice Appearance
+
+function twice_appearance() {
+ local string=$1
+ local length=${#string}
+ declare -A temp
+
+ for (( i = 0; i < $length; i++ )); do
+ letter=${string:$i:1}
+ if [[ -n "${temp[$letter]}" ]]; then
+ echo $letter
+ break
+ fi
+ temp[$letter]=1
+ done
+
+ echo ' '
+}
+
+examples=("acbddbca" "abccd" "abcdabbb")
+
+for e in ${examples[@]}; do
+ ta=$(twice_appearance "$e")
+ echo "Input : str = $e"
+ echo "Output : $ta"
+done
+
diff --git a/challenge-280/nelo-tovar/perl/ch-1.pl b/challenge-280/nelo-tovar/perl/ch-1.pl
new file mode 100644
index 0000000000..d47e00c938
--- /dev/null
+++ b/challenge-280/nelo-tovar/perl/ch-1.pl
@@ -0,0 +1,35 @@
+#!/usr/bin/env perl
+
+# The Weekly Challenge 280 - By Nelo Tovar
+#
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-280/
+#
+# Task 1 - Twice Appearance
+#
+
+use strict;
+use warnings;
+use v5.28;
+
+my @examples = ("acbddbca", "abccd", "abcdabbb");
+
+sub twice_appearance {
+ my @letters = split(//,shift);
+ my %temp;
+
+ foreach my $letter (@letters) {
+ return $letter if ($temp{$letter});
+
+ $temp{$letter} = 1;
+ }
+
+ return ' '
+}
+
+for my $elements (@examples) {
+ my $ta = twice_appearance $elements;
+
+ say 'Input : $str = ', $elements;
+ say 'Output : ', $ta;
+ say ' ';
+}
diff --git a/challenge-280/nelo-tovar/perl/ch-2.pl b/challenge-280/nelo-tovar/perl/ch-2.pl
new file mode 100644
index 0000000000..fbf9e2def1
--- /dev/null
+++ b/challenge-280/nelo-tovar/perl/ch-2.pl
@@ -0,0 +1,30 @@
+#!/usr/bin/env perl
+
+# The Weekly Challenge 280 - By Nelo Tovar
+#
+# https://theweeklychallenge.org/blog/perl-weekly-challenge-280/
+#
+# Task 2 - Count Asterisks
+#
+
+use strict;
+use warnings;
+use v5.28;
+
+my @examples = ("p|*e*rl|w**e|*ekly|", "perl", "th|ewe|e**|k|l***ych|alleng|e");
+
+sub count_asterisks {
+ my $string = shift;
+
+ $string =~ s/\|.*?\|//sg;
+
+ return $string =~ tr/*//;
+}
+
+for my $elements (@examples) {
+ my $ca = count_asterisks $elements;
+
+ say 'Input : @nums = ', $elements;
+ say 'Output : ', $ca;
+ say ' ';
+}