aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-12-06 18:04:19 +0000
committerGitHub <noreply@github.com>2022-12-06 18:04:19 +0000
commit8b1d1b4780157df141833a9d82da510d6238ab83 (patch)
tree6aca7c34478172164cb518b5b59074d5108d754d
parent92208b70f92aacde416f7ccf5d63f3a34a1b699e (diff)
parent14db3b829f65485eab9f4520d000cc48ba5449d3 (diff)
downloadperlweeklychallenge-club-8b1d1b4780157df141833a9d82da510d6238ab83.tar.gz
perlweeklychallenge-club-8b1d1b4780157df141833a9d82da510d6238ab83.tar.bz2
perlweeklychallenge-club-8b1d1b4780157df141833a9d82da510d6238ab83.zip
Merge pull request #7220 from wlmb/challenges
Add pdl-less solution
-rwxr-xr-xchallenge-194/wlmb/perl/ch-2a.pl17
1 files changed, 17 insertions, 0 deletions
diff --git a/challenge-194/wlmb/perl/ch-2a.pl b/challenge-194/wlmb/perl/ch-2a.pl
new file mode 100755
index 0000000000..34adb6f921
--- /dev/null
+++ b/challenge-194/wlmb/perl/ch-2a.pl
@@ -0,0 +1,17 @@
+#!/usr/bin/env perl
+# Perl weekly challenge 194
+# Task 2: Frequency Equalizer. Without PDL
+#
+# See https://wlmb.github.io/2022/12/05/PWC194/#task-2-frequency-equalizer
+use v5.36;
+use List::Util qw(sum);
+for(@ARGV){
+ my %frequencies;
+ $frequencies{$_}++ for(split "");
+ my @vals=values %frequencies;
+ my $N=@vals;
+ my $sum=sum @vals;
+ my $x=($sum-1)/$N;
+ my $t=sum map {$_*$_} @vals;
+ say "$_ -> ", $sum%$N==1 && $t==$N*$x**2 + 2*$x + 1? 1 :0
+}