From 1416e39e9b81efb510892d22e3b3aaee5045e035 Mon Sep 17 00:00:00 2001 From: Dave Jacoby Date: Tue, 23 Jul 2024 15:00:37 -0400 Subject: 279 DAJ --- challenge-279/dave-jacoby/perl/ch-1.pl | 44 ++++++++++++++++++++++++++++++++++ challenge-279/dave-jacoby/perl/ch-2.pl | 39 ++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100644 challenge-279/dave-jacoby/perl/ch-1.pl create mode 100644 challenge-279/dave-jacoby/perl/ch-2.pl diff --git a/challenge-279/dave-jacoby/perl/ch-1.pl b/challenge-279/dave-jacoby/perl/ch-1.pl new file mode 100644 index 0000000000..df3b55d3f9 --- /dev/null +++ b/challenge-279/dave-jacoby/perl/ch-1.pl @@ -0,0 +1,44 @@ +#!/usr/bin/env perl + +use strict; +use warnings; +use experimental qw{ bitwise fc postderef say signatures state }; + +use List::Util qw{max}; + +my @examples = ( + { + letters => [ 'R', 'E', 'P', 'L' ], + weights => [ 3, 2, 1, 4 ], + }, + { + letters => [ 'A', 'U', 'R', 'K' ], + weights => [ 2, 4, 1, 3 ], + }, + { + letters => [ 'O', 'H', 'Y', 'N', 'P', 'T' ], + weights => [ 5, 4, 2, 6, 1, 3 ], + } +); + +for my $example (@examples) { + my $output = sort_letters($example); + my $letters = join ', ', map { qq{'$_'} } $example->{letters}->@*; + my $weights = join ', ', $example->{weights}->@*; + say <<"END"; + Input: \@letters = ($letters) + \@weights = ($weights) + Output: $output +END +} + +sub sort_letters ($input) { + my @output; + for my $i ( 0..-1+scalar $input->{weights}->@*){ + my $w = $input->{weights}[$i]; + my $l = $input->{letters}[$i]; + @output[$w]= $l; + } + my $output = join '', grep { defined } @output; + return $output; +} diff --git a/challenge-279/dave-jacoby/perl/ch-2.pl b/challenge-279/dave-jacoby/perl/ch-2.pl new file mode 100644 index 0000000000..92e8a63a8e --- /dev/null +++ b/challenge-279/dave-jacoby/perl/ch-2.pl @@ -0,0 +1,39 @@ +#!/usr/bin/env perl + +use strict; +use warnings; +use experimental qw{ fc say postderef signatures state }; + +my @examples = ( + + 'perl', + 'book', + 'good morning', +); + +for my $input (@examples) { + my $output = split_string($input) ? 'true' : 'false'; + + say <<"END"; + Input: \$str = "$input" + Output: $output +END +} + +sub split_string ($word) { + my $l = length $word; + for my $i ( 1 .. $l ) { + my $first = substr $word, 0, $i; + my $second = substr $word, $i, $l - $i; + my $ff = scalar grep { is_vowel($_) } split //, $first; + my $ss = scalar grep { is_vowel($_) } split //, $second; + return 1 if $ff == $ss; + } + return 0; +} + +sub is_vowel ($letter) { + my @vowels = qw{a e i o u}; + return 1 if grep { $_ eq $letter } @vowels; + return 0; +} -- cgit From 034f10a78e68a2f70eb9e8e34d3534feac818b5b Mon Sep 17 00:00:00 2001 From: Bob Lied Date: Thu, 25 Jul 2024 09:10:20 -0500 Subject: Week 279 solutions --- challenge-279/bob-lied/README | 6 ++-- challenge-279/bob-lied/perl/ch-1.pl | 66 +++++++++++++++++++++++++++++++++++++ challenge-279/bob-lied/perl/ch-2.pl | 64 +++++++++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+), 3 deletions(-) create mode 100644 challenge-279/bob-lied/perl/ch-1.pl create mode 100644 challenge-279/bob-lied/perl/ch-2.pl diff --git a/challenge-279/bob-lied/README b/challenge-279/bob-lied/README index 280b5bfa87..c57c6cd9ae 100644 --- a/challenge-279/bob-lied/README +++ b/challenge-279/bob-lied/README @@ -1,4 +1,4 @@ -Solutions to weekly challenge 277 by Bob Lied +Solutions to weekly challenge 279 by Bob Lied -https://perlweeklychallenge.org/blog/perl-weekly-challenge-277/ -https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-277/bob-lied +https://perlweeklychallenge.org/blog/perl-weekly-challenge-279/ +https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-279/bob-lied diff --git a/challenge-279/bob-lied/perl/ch-1.pl b/challenge-279/bob-lied/perl/ch-1.pl new file mode 100644 index 0000000000..d00b02cf85 --- /dev/null +++ b/challenge-279/bob-lied/perl/ch-1.pl @@ -0,0 +1,66 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2024, Bob Lied +#============================================================================= +# ch-1.pl Perl Weekly Challenge 279 Task 1 Sort Letters +#============================================================================= +# You are given two arrays, @letters and @weights. +# Write a script to sort the given array @letters based on the @weights. +# Example 1 Input: @letters = ('R', 'E', 'P', 'L') +# @weights = (3, 2, 1, 4) +# Output: PERL +# Example 2 Input: @letters = ('A', 'U', 'R', 'K') +# @weights = (2, 4, 1, 3) +# Output: RAKU +# Example 3 Input: @letters = ('O', 'H', 'Y', 'N', 'P', 'T') +# @weights = (5, 4, 2, 6, 1, 3) +# Output: PYTHON +#============================================================================= + +use v5.40; + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +my @letters = split(//, shift); +my @weights = @ARGV; +say sortLetters(\@letters, \@weights); + +sub sortLetters($letters, $weights) +{ + join '', + map { $_->[0] } + sort { $a->[1] <=> $b->[1] } + map { [ $letters->[$_] => $weights->[$_] ] } + 0 .. $letters->$#* +} + +sub runTest +{ + use Test2::V0; + + is( sortLetters( [qw(R E P L)], [3,2,1,4] ), "PERL", "Example 1"); + is( sortLetters( [qw(A U R K)], [2,4,1,3] ), "RAKU", "Example 2"); + is( sortLetters( [qw(O H Y N P T)], [5,4,2,6,1,3] ), "PYTHON", "Example 3"); + + is( sortLetters( [qw(B B D E L I O)], [3,1,7,6,4,5,2] ), "BOBLIED", "Duplicate letters"); + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + cmpthese($repeat, { + label => sub { }, + }); +} + diff --git a/challenge-279/bob-lied/perl/ch-2.pl b/challenge-279/bob-lied/perl/ch-2.pl new file mode 100644 index 0000000000..530bc73264 --- /dev/null +++ b/challenge-279/bob-lied/perl/ch-2.pl @@ -0,0 +1,64 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2024, Bob Lied +#============================================================================= +# ch-2.pl Perl Weekly Challenge 279 Task 2 Split String +#============================================================================= +# You are given a string, $str. +# Write a script to split the given string into two containing exactly +# same number of vowels and return true if you can otherwise false. +# Example 1 Input: $str = "perl" +# Ouput: false +# Example 2 Input: $str = "book" +# Ouput: true +# Two possible strings "bo" and "ok" containing exactly one vowel each. +# Example 3 Input: $str = "good morning" +# Ouput: true +# Two possible strings "good " and "morning" containing two vowels each +# or "good m" and "orning" containing two vowels each. (Others also work). +#============================================================================= + +use v5.40; + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +say splitString($_) for @ARGV; + +sub splitString($str) +{ + # Too easy. It's possible if there's an even number of vowels. + return ($str =~ tr/aeiou//d) % 2 == 0; +} + +sub runTest +{ + use Test2::V0; + + is( splitString("perl"), false, "Example 1"); + is( splitString("book"), true, "Example 2"); + is( splitString("good morning"), true, "Example 3"); + is( splitString("xyzzy"), true, "No vowels"); + is( splitString("aeiou"), false, "All vowels, odd"); + is( splitString("aeioua"), true, "All vowels, even"); + + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + cmpthese($repeat, { + label => sub { }, + }); +} + -- cgit From 8fd0343b81b279fdd12009625081fe190be44ca9 Mon Sep 17 00:00:00 2001 From: Jan Krňávek Date: Fri, 26 Jul 2024 00:56:17 +0200 Subject: solutions week 279 --- challenge-279/wambash/raku/ch-1.raku | 20 ++++++++++++++++++++ challenge-279/wambash/raku/ch-2.raku | 21 +++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 challenge-279/wambash/raku/ch-1.raku create mode 100644 challenge-279/wambash/raku/ch-2.raku diff --git a/challenge-279/wambash/raku/ch-1.raku b/challenge-279/wambash/raku/ch-1.raku new file mode 100644 index 0000000000..8e52054975 --- /dev/null +++ b/challenge-279/wambash/raku/ch-1.raku @@ -0,0 +1,20 @@ +#!/usr/bin/env raku + +sub sort-letters (@letters,@weights) { + @weights Z, @letters + andthen .map: { IntStr.new: |$_ }\ + andthen .sort + andthen .join +} + +multi MAIN (Bool :test($)!) { + use Test; + is sort-letters(, (3,2,1,4)),'PERL'; + is sort-letters(, (2,4,1,3)),'RAKU'; + is sort-letters(, (5, 4, 2, 6, 1, 3)),'PYTHON'; + done-testing; +} + +multi MAIN ($letters,*@weights) { + say sort-letters $letters.comb, @weights +} diff --git a/challenge-279/wambash/raku/ch-2.raku b/challenge-279/wambash/raku/ch-2.raku new file mode 100644 index 0000000000..5932519cbb --- /dev/null +++ b/challenge-279/wambash/raku/ch-2.raku @@ -0,0 +1,21 @@ +#!/usr/bin/env raku + +sub split-string ($str) { + $str + andthen .comb: /:i <[aeiou]>/ + andthen .elems + andthen $_ %% 2 +} + +multi MAIN (Bool :test($)!) { + use Test; + is split-string('perl'), False; + is split-string('book'), True; + is split-string('good morning'), True; + is split-string('Ook'), True; + done-testing; +} + +multi MAIN ($str) { + say split-string $str +} -- cgit From 58d57f70a8c5b2a82ae2249239c6ad2b80231767 Mon Sep 17 00:00:00 2001 From: 2colours Date: Fri, 26 Jul 2024 01:23:55 +0200 Subject: Prolog solutions for week #279 --- challenge-279/2colours/prolog/ch-1.p | 1 + challenge-279/2colours/prolog/ch-2.p | 1 + 2 files changed, 2 insertions(+) create mode 100644 challenge-279/2colours/prolog/ch-1.p create mode 100644 challenge-279/2colours/prolog/ch-2.p diff --git a/challenge-279/2colours/prolog/ch-1.p b/challenge-279/2colours/prolog/ch-1.p new file mode 100644 index 0000000000..b371649c37 --- /dev/null +++ b/challenge-279/2colours/prolog/ch-1.p @@ -0,0 +1 @@ +task1(Letters, Weights, Word) :- maplist([E1, E2, E1-E2]>>true, Letters, Weights, Weighted_Letters), sort(2, @<, Weighted_Letters, Sorted_Pairs), pairs_keys(Sorted_Pairs, Sorted_Letters), string_chars(Word, Sorted_Letters). diff --git a/challenge-279/2colours/prolog/ch-2.p b/challenge-279/2colours/prolog/ch-2.p new file mode 100644 index 0000000000..6adf7674d2 --- /dev/null +++ b/challenge-279/2colours/prolog/ch-2.p @@ -0,0 +1 @@ +task2(Str) :- re_replace("[^aeiou]"/ig, "", Str, Vowels_Only), string_length(Vowels_Only, Vowel_Count), Vowel_Count mod 2 =:= 0. -- cgit From 350f495b09a4b6b6db8506533e2dccc68d9fc3f4 Mon Sep 17 00:00:00 2001 From: DevSanti12 Date: Thu, 25 Jul 2024 23:56:51 -0500 Subject: added perl challenges for #279 --- challenge-279/santiago-leyva/perl/ch-01.pl | 46 ++++++++++++++++++++++++++++++ challenge-279/santiago-leyva/perl/ch-02.pl | 46 ++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 challenge-279/santiago-leyva/perl/ch-01.pl create mode 100644 challenge-279/santiago-leyva/perl/ch-02.pl diff --git a/challenge-279/santiago-leyva/perl/ch-01.pl b/challenge-279/santiago-leyva/perl/ch-01.pl new file mode 100644 index 0000000000..51f8683eb8 --- /dev/null +++ b/challenge-279/santiago-leyva/perl/ch-01.pl @@ -0,0 +1,46 @@ +=begin + +You are given two arrays, @letters and @weights. + +Write a script to sort the given array @letters based on the @weights. + +Example 1 +Input: @letters = ('R', 'E', 'P', 'L') + @weights = (3, 2, 1, 4) +Output: PERL +Example 2 +Input: @letters = ('A', 'U', 'R', 'K') + @weights = (2, 4, 1, 3) +Output: RAKU +Example 3 +Input: @letters = ('O', 'H', 'Y', 'N', 'P', 'T') + @weights = (5, 4, 2, 6, 1, 3) +Output: PYTHON + +=cut + +use strict; +use Data::Dumper; + +my @letters = (['R', 'E', 'P', 'L'],['A', 'U', 'R', 'K'],['O', 'H', 'Y', 'N', 'P', 'T']); +my @weights = ([3, 2, 1, 4],[2, 4, 1, 3],[5, 4, 2, 6, 1, 3]); + +for(0..(scalar @weights)-1){ + sortArray($letters[$_],$weights[$_]); +} + +sub sortArray { + my $let = shift; + my $wgt = shift; + my @letters_ = @$let; + my @weights_ = @$wgt; + my %map; + my $n = scalar(@weights_); + foreach my $i (0..$n){ + $map{$weights_[$i]} = $letters_[$i]; + } + foreach(sort(keys %map)){ + print $map{$_}; + } + print "\n"; +} \ No newline at end of file diff --git a/challenge-279/santiago-leyva/perl/ch-02.pl b/challenge-279/santiago-leyva/perl/ch-02.pl new file mode 100644 index 0000000000..13c9e64f08 --- /dev/null +++ b/challenge-279/santiago-leyva/perl/ch-02.pl @@ -0,0 +1,46 @@ +=begin + +You are given a string, $str. + +Write a script to split the given string into two containing exactly same number of vowels and return true if you can otherwise false. + +Example 1 +Input: $str = "perl" +Ouput: false + +Example 2 +Input: $str = "book" +Ouput: true +Two possible strings "bo" and "ok" containing exactly one vowel each. + +Example 3 +Input: $str = "good morning" +Ouput: true +Two possible strings "good " and "morning" containing two vowels each or "good m" and "orning" containing two vowels each. + +=cut +use strict; +use warnings; +use Data::Dumper; + +my @strings = (["perl"],["book"],["good morning"]); + +foreach(@strings){ + print vowelCheck($_)."\n"; +} + +sub vowelCheck { + my $string_ = shift; + my $string = @$string_[0]; + my @A = split("",$string); + my @vowels; + + for(my $i=0;$i<(scalar @A); $i++){ + if($A[$i] =~ /[aeiouAEIOU]/){ + push @vowels,$A[$i]; + } + } + + return "True" if(scalar @vowels % 2 == 0); + return "False" if(scalar @vowels % 2 != 0); +} \ No newline at end of file -- cgit From 9a4dd9000bb589778b7f7b0036e1876ad6090c06 Mon Sep 17 00:00:00 2001 From: Mohammad Sajid Anwar Date: Fri, 26 Jul 2024 10:17:00 +0100 Subject: - Added solutions by Bob Lied. - Added solutions by Robert Ransbottom. - Added solutions by Jan Krnavek. - Added solutions by Marton Polgar. - Added solutions by Santiago Leyva. --- challenge-279/santiago-leyva/perl/ch-01.pl | 46 -- challenge-279/santiago-leyva/perl/ch-02.pl | 46 -- challenge-279/santiago-leyva/perl/ch-1.pl | 46 ++ challenge-279/santiago-leyva/perl/ch-2.pl | 46 ++ stats/pwc-current.json | 386 ++++++++------- stats/pwc-language-breakdown-2019.json | 598 +++++++++++------------ stats/pwc-language-breakdown-2020.json | 316 ++++++------ stats/pwc-language-breakdown-2021.json | 746 ++++++++++++++--------------- stats/pwc-language-breakdown-2022.json | 388 +++++++-------- stats/pwc-language-breakdown-2023.json | 338 ++++++------- stats/pwc-language-breakdown-2024.json | 224 ++++----- stats/pwc-language-breakdown-summary.json | 78 +-- stats/pwc-leaders.json | 744 ++++++++++++++-------------- stats/pwc-summary-1-30.json | 92 ++-- stats/pwc-summary-121-150.json | 98 ++-- stats/pwc-summary-151-180.json | 38 +- stats/pwc-summary-181-210.json | 120 ++--- stats/pwc-summary-211-240.json | 34 +- stats/pwc-summary-241-270.json | 54 +-- stats/pwc-summary-271-300.json | 34 +- stats/pwc-summary-301-330.json | 76 +-- stats/pwc-summary-31-60.json | 48 +- stats/pwc-summary-61-90.json | 50 +- stats/pwc-summary-91-120.json | 30 +- stats/pwc-summary.json | 40 +- 25 files changed, 2388 insertions(+), 2328 deletions(-) delete mode 100644 challenge-279/santiago-leyva/perl/ch-01.pl delete mode 100644 challenge-279/santiago-leyva/perl/ch-02.pl create mode 100644 challenge-279/santiago-leyva/perl/ch-1.pl create mode 100644 challenge-279/santiago-leyva/perl/ch-2.pl diff --git a/challenge-279/santiago-leyva/perl/ch-01.pl b/challenge-279/santiago-leyva/perl/ch-01.pl deleted file mode 100644 index 51f8683eb8..0000000000 --- a/challenge-279/santiago-leyva/perl/ch-01.pl +++ /dev/null @@ -1,46 +0,0 @@ -=begin - -You are given two arrays, @letters and @weights. - -Write a script to sort the given array @letters based on the @weights. - -Example 1 -Input: @letters = ('R', 'E', 'P', 'L') - @weights = (3, 2, 1, 4) -Output: PERL -Example 2 -Input: @letters = ('A', 'U', 'R', 'K') - @weights = (2, 4, 1, 3) -Output: RAKU -Example 3 -Input: @letters = ('O', 'H', 'Y', 'N', 'P', 'T') - @weights = (5, 4, 2, 6, 1, 3) -Output: PYTHON - -=cut - -use strict; -use Data::Dumper; - -my @letters = (['R', 'E', 'P', 'L'],['A', 'U', 'R', 'K'],['O', 'H', 'Y', 'N', 'P', 'T']); -my @weights = ([3, 2, 1, 4],[2, 4, 1, 3],[5, 4, 2, 6, 1, 3]); - -for(0..(scalar @weights)-1){ - sortArray($letters[$_],$weights[$_]); -} - -sub sortArray { - my $let = shift; - my $wgt = shift; - my @letters_ = @$let; - my @weights_ = @$wgt; - my %map; - my $n = scalar(@weights_); - foreach my $i (0..$n){ - $map{$weights_[$i]} = $letters_[$i]; - } - foreach(sort(keys %map)){ - print $map{$_}; - } - print "\n"; -} \ No newline at end of file diff --git a/challenge-279/santiago-leyva/perl/ch-02.pl b/challenge-279/santiago-leyva/perl/ch-02.pl deleted file mode 100644 index 13c9e64f08..0000000000 --- a/challenge-279/santiago-leyva/perl/ch-02.pl +++ /dev/null @@ -1,46 +0,0 @@ -=begin - -You are given a string, $str. - -Write a script to split the given string into two containing exactly same number of vowels and return true if you can otherwise false. - -Example 1 -Input: $str = "perl" -Ouput: false - -Example 2 -Input: $str = "book" -Ouput: true -Two possible strings "bo" and "ok" containing exactly one vowel each. - -Example 3 -Input: $str = "good morning" -Ouput: true -Two possible strings "good " and "morning" containing two vowels each or "good m" and "orning" containing two vowels each. - -=cut -use strict; -use warnings; -use Data::Dumper; - -my @strings = (["perl"],["book"],["good morning"]); - -foreach(@strings){ - print vowelCheck($_)."\n"; -} - -sub vowelCheck { - my $string_ = shift; - my $string = @$string_[0]; - my @A = split("",$string); - my @vowels; - - for(my $i=0;$i<(scalar @A); $i++){ - if($A[$i] =~ /[aeiouAEIOU]/){ - push @vowels,$A[$i]; - } - } - - return "True" if(scalar @vowels % 2 == 0); - return "False" if(scalar @vowels % 2 != 0); -} \ No newline at end of file diff --git a/challenge-279/santiago-leyva/perl/ch-1.pl b/challenge-279/santiago-leyva/perl/ch-1.pl new file mode 100644 index 0000000000..51f8683eb8 --- /dev/null +++ b/challenge-279/santiago-leyva/perl/ch-1.pl @@ -0,0 +1,46 @@ +=begin + +You are given two arrays, @letters and @weights. + +Write a script to sort the given array @letters based on the @weights. + +Example 1 +Input: @letters = ('R', 'E', 'P', 'L') + @weights = (3, 2, 1, 4) +Output: PERL +Example 2 +Input: @letters = ('A', 'U', 'R', 'K') + @weights = (2, 4, 1, 3) +Output: RAKU +Example 3 +Input: @letters = ('O', 'H', 'Y', 'N', 'P', 'T') + @weights = (5, 4, 2, 6, 1, 3) +Output: PYTHON + +=cut + +use strict; +use Data::Dumper; + +my @letters = (['R', 'E', 'P', 'L'],['A', 'U', 'R', 'K'],['O', 'H', 'Y', 'N', 'P', 'T']); +my @weights = ([3, 2, 1, 4],[2, 4, 1, 3],[5, 4, 2, 6, 1, 3]); + +for(0..(scalar @weights)-1){ + sortArray($letters[$_],$weights[$_]); +} + +sub sortArray { + my $let = shift; + my $wgt = shift; + my @letters_ = @$let; + my @weights_ = @$wgt; + my %map; + my $n = scalar(@weights_); + foreach my $i (0..$n){ + $map{$weights_[$i]} = $letters_[$i]; + } + foreach(sort(keys %map)){ + print $map{$_}; + } + print "\n"; +} \ No newline at end of file diff --git a/challenge-279/santiago-leyva/perl/ch-2.pl b/challenge-279/santiago-leyva/perl/ch-2.pl new file mode 100644 index 0000000000..13c9e64f08 --- /dev/null +++ b/challenge-279/santiago-leyva/perl/ch-2.pl @@ -0,0 +1,46 @@ +=begin + +You are given a string, $str. + +Write a script to split the given string into two containing exactly same number of vowels and return true if you can otherwise false. + +Example 1 +Input: $str = "perl" +Ouput: false + +Example 2 +Input: $str = "book" +Ouput: true +Two possible strings "bo" and "ok" containing exactly one vowel each. + +Example 3 +Input: $str = "good morning" +Ouput: true +Two possible strings "good " and "morning" containing two vowels each or "good m" and "orning" containing two vowels each. + +=cut +use strict; +use warnings; +use Data::Dumper; + +my @strings = (["perl"],["book"],["good morning"]); + +foreach(@strings){ + print vowelCheck($_)."\n"; +} + +sub vowelCheck { + my $string_ = shift; + my $string = @$string_[0]; + my @A = split("",$string); + my @vowels; + + for(my $i=0;$i<(scalar @A); $i++){ + if($A[$i] =~ /[aeiouAEIOU]/){ + push @vowels,$A[$i]; + } + } + + return "True" if(scalar @vowels % 2 == 0); + return "False" if(scalar @vowels % 2 != 0); +} \ No newline at end of file diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 069899ac1f..9c5821a90b 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -2,126 +2,22 @@ "legend" : { "enabled" : 0 }, - "subtitle" : { - "text" : "[Champions: 21] Last updated at 2024-07-25 09:04:06 GMT" + "title" : { + "text" : "The Weekly Challenge - 279" }, - "series" : [ - { - "colorByPoint" : 1, - "name" : "The Weekly Challenge - 279", - "data" : [ - { - "name" : "Ali Moradi", - "drilldown" : "Ali Moradi", - "y" : 5 - }, - { - "name" : "Andrezgz", - "y" : 2, - "drilldown" : "Andrezgz" - }, - { - "y" : 4, - "drilldown" : "Athanasius", - "name" : "Athanasius" - }, - { - "y" : 2, - "drilldown" : "David Ferrone", - "name" : "David Ferrone" - }, - { - "name" : "E. Choroba", - "drilldown" : "E. Choroba", - "y" : 2 - }, - { - "name" : "Feng Chang", - "y" : 2, - "drilldown" : "Feng Chang" - }, - { - "name" : "Jaldhar H. Vyas", - "drilldown" : "Jaldhar H. Vyas", - "y" : 5 - }, - { - "drilldown" : "Kjetil Skotheim", - "y" : 2, - "name" : "Kjetil Skotheim" - }, - { - "drilldown" : "Laurent Rosenfeld", - "y" : 3, - "name" : "Laurent Rosenfeld" - }, - { - "y" : 2, - "drilldown" : "Mark Anderson", - "name" : "Mark Anderson" - }, - { - "drilldown" : "Matthew Neleigh", - "y" : 2, - "name" : "Matthew Neleigh" - }, - { - "name" : "Niels van Dijke", - "y" : 2, - "drilldown" : "Niels van Dijke" - }, - { - "name" : "Packy Anderson", - "drilldown" : "Packy Anderson", - "y" : 5 - }, - { - "name" : "Peter Campbell Smith", - "y" : 3, - "drilldown" : "Peter Campbell Smith" - }, - { - "y" : 2, - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros" - }, - { - "y" : 3, - "drilldown" : "Reinier Maliepaard", - "name" : "Reinier Maliepaard" - }, - { - "drilldown" : "Robbie Hatley", - "y" : 3, - "name" : "Robbie Hatley" - }, - { - "y" : 4, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "drilldown" : "Thomas Kohler", - "y" : 4, - "name" : "Thomas Kohler" - }, - { - "name" : "Ulrich Rieke", - "drilldown" : "Ulrich Rieke", - "y" : 4 - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ] + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } - ], + }, "drilldown" : { "series" : [ { - "id" : "Ali Moradi", + "name" : "Ali Moradi", "data" : [ [ "Perl", @@ -136,20 +32,20 @@ 1 ] ], - "name" : "Ali Moradi" + "id" : "Ali Moradi" }, { - "id" : "Andrezgz", + "name" : "Andrezgz", "data" : [ [ "Perl", 2 ] ], - "name" : "Andrezgz" + "id" : "Andrezgz" }, { - "id" : "Athanasius", + "name" : "Athanasius", "data" : [ [ "Perl", @@ -160,17 +56,27 @@ 2 ] ], - "name" : "Athanasius" + "id" : "Athanasius" }, { - "id" : "David Ferrone", + "id" : "Bob Lied", "data" : [ [ "Perl", 2 ] ], - "name" : "David Ferrone" + "name" : "Bob Lied" + }, + { + "name" : "David Ferrone", + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "David Ferrone" }, { "id" : "E. Choroba", @@ -183,17 +89,17 @@ "name" : "E. Choroba" }, { - "id" : "Feng Chang", "data" : [ [ "Raku", 2 ] ], - "name" : "Feng Chang" + "name" : "Feng Chang", + "id" : "Feng Chang" }, { - "name" : "Jaldhar H. Vyas", + "id" : "Jaldhar H. Vyas", "data" : [ [ "Perl", @@ -208,17 +114,27 @@ 1 ] ], - "id" : "Jaldhar H. Vyas" + "name" : "Jaldhar H. Vyas" }, { + "data" : [ + [ + "Raku", + 2 + ] + ], + "name" : "Jan Krnavek", + "id" : "Jan Krnavek" + }, + { + "id" : "Kjetil Skotheim", "name" : "Kjetil Skotheim", "data" : [ [ "Perl", 2 ] - ], - "id" : "Kjetil Skotheim" + ] }, { "id" : "Laurent Rosenfeld", @@ -239,36 +155,37 @@ "name" : "Laurent Rosenfeld" }, { - "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] ], + "name" : "Mark Anderson", "id" : "Mark Anderson" }, { - "name" : "Matthew Neleigh", "data" : [ [ "Perl", 2 ] ], + "name" : "Matthew Neleigh", "id" : "Matthew Neleigh" }, { - "name" : "Niels van Dijke", + "id" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] ], - "id" : "Niels van Dijke" + "name" : "Niels van Dijke" }, { + "id" : "Packy Anderson", "name" : "Packy Anderson", "data" : [ [ @@ -283,11 +200,10 @@ "Blog", 1 ] - ], - "id" : "Packy Anderson" + ] }, { - "name" : "Peter Campbell Smith", + "id" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -298,16 +214,16 @@ 1 ] ], - "id" : "Peter Campbell Smith" + "name" : "Peter Campbell Smith" }, { - "name" : "Peter Meszaros", "data" : [ [ "Perl", 2 ] ], + "name" : "Peter Meszaros", "id" : "Peter Meszaros" }, { @@ -339,7 +255,17 @@ "id" : "Robbie Hatley" }, { - "name" : "Roger Bell_West", + "id" : "Robert Ransbottom", + "name" : "Robert Ransbottom", + "data" : [ + [ + "Raku", + 2 + ] + ] + }, + { + "id" : "Roger Bell_West", "data" : [ [ "Perl", @@ -350,10 +276,19 @@ 2 ] ], - "id" : "Roger Bell_West" + "name" : "Roger Bell_West" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "name" : "Santiago Leyva", + "id" : "Santiago Leyva" }, { - "name" : "Thomas Kohler", "data" : [ [ "Perl", @@ -364,9 +299,12 @@ 2 ] ], + "name" : "Thomas Kohler", "id" : "Thomas Kohler" }, { + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -376,13 +314,9 @@ "Raku", 2 ] - ], - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke" + ] }, { - "id" : "W. Luis Mochan", - "name" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -392,36 +326,162 @@ "Blog", 1 ] - ] + ], + "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan" } ] }, + "xAxis" : { + "type" : "category" + }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "xAxis" : { - "type" : "category" - }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "followPointer" : 1, - "headerFormat" : "{series.name}
" + "subtitle" : { + "text" : "[Champions: 25] Last updated at 2024-07-26 09:15:23 GMT" }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 + "series" : [ + { + "data" : [ + { + "name" : "Ali Moradi", + "drilldown" : "Ali Moradi", + "y" : 5 + }, + { + "name" : "Andrezgz", + "drilldown" : "Andrezgz", + "y" : 2 + }, + { + "name" : "Athanasius", + "drilldown" : "Athanasius", + "y" : 4 + }, + { + "name" : "Bob Lied", + "drilldown" : "Bob Lied", + "y" : 2 + }, + { + "name" : "David Ferrone", + "y" : 2, + "drilldown" : "David Ferrone" + }, + { + "name" : "E. Choroba", + "y" : 2, + "drilldown" : "E. Choroba" + }, + { + "drilldown" : "Feng Chang", + "y" : 2, + "name" : "Feng Chang" + }, + { + "drilldown" : "Jaldhar H. Vyas", + "y" : 5, + "name" : "Jaldhar H. Vyas" + }, + { + "drilldown" : "Jan Krnavek", + "y" : 2, + "name" : "Jan Krnavek" + }, + { + "drilldown" : "Kjetil Skotheim", + "y" : 2, + "name" : "Kjetil Skotheim" + }, + { + "name" : "Laurent Rosenfeld", + "y" : 3, + "drilldown" : "Laurent Rosenfeld" + }, + { + "name" : "Mark Anderson", + "y" : 2, + "drilldown" : "Mark Anderson" + }, + { + "name" : "Matthew Neleigh", + "drilldown" : "Matthew Neleigh", + "y" : 2 + }, + { + "name" : "Niels van Dijke", + "y" : 2, + "drilldown" : "Niels van Dijke" + }, + { + "name" : "Packy Anderson", + "drilldown" : "Packy Anderson", + "y" : 5 + }, + { + "name" : "Peter Campbell Smith", + "y" : 3, + "drilldown" : "Peter Campbell Smith" + }, + { + "name" : "Peter Meszaros", + "y" : 2, + "drilldown" : "Peter Meszaros" + }, + { + "name" : "Reinier Maliepaard", + "drilldown" : "Reinier Maliepaard", + "y" : 3 + }, + { + "y" : 3, + "drilldown" : "Robbie Hatley", + "name" : "Robbie Hatley" + }, + { + "name" : "Robert Ransbottom", + "y" : 2, + "drilldown" : "Robert Ransbottom" + }, + { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 4 + }, + { + "drilldown" : "Santiago Leyva", + "y" : 2, + "name" : "Santiago Leyva" + }, + { + "name" : "Thomas Kohler", + "drilldown" : "Thomas Kohler", + "y" : 4 + }, + { + "name" : "Ulrich Rieke", + "y" : 4, + "drilldown" : "Ulrich Rieke" + }, + { + "name" : "W. Luis Mochan", + "y" : 3, + "drilldown" : "W. Luis Mochan" + } + ], + "name" : "The Weekly Challenge - 279", + "colorByPoint" : 1 } - }, + ], "chart" : { "type" : "column" }, - "title" : { - "text" : "The Weekly Challenge - 279" + "tooltip" : { + "followPointer" : 1, + "headerFormat" : "{series.name}
", + "pointFormat" : "{point.name}: {point.y:f}
" } } diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json index cabbc06163..7f2c1f20b6 100644 --- a/stats/pwc-language-breakdown-2019.json +++ b/stats/pwc-language-breakdown-2019.json @@ -1,241 +1,15 @@ { - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-25 09:04:06 GMT" - }, - "legend" : { - "enabled" : "false" - }, - "xAxis" : { - "type" : "category" - }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true", - "headerFormat" : "" + "xAxis" : { + "type" : "category" }, - "series" : [ - { - "data" : [ - { - "drilldown" : "001", - "y" : 165, - "name" : "#001" - }, - { - "name" : "#002", - "y" : 133, - "drilldown" : "002" - }, - { - "name" : "#003", - "drilldown" : "003", - "y" : 91 - }, - { - "drilldown" : "004", - "y" : 106, - "name" : "#004" - }, - { - "y" : 82, - "drilldown" : "005", - "name" : "#005" - }, - { - "y" : 63, - "drilldown" : "006", - "name" : "#006" - }, - { - "name" : "#007", - "y" : 71, - "drilldown" : "007" - }, - { - "drilldown" : "008", - "y" : 82, - "name" : "#008" - }, - { - "y" : 79, - "drilldown" : "009", - "name" : "#009" - }, - { - "y" : 69, - "drilldown" : "010", - "name" : "#010" - }, - { - "drilldown" : "011", - "y" : 86, - "name" : "#011" - }, - { - "y" : 90, - "drilldown" : "012", - "name" : "#012" - }, - { - "drilldown" : "013", - "y" : 85, - "name" : "#013" - }, - { - "drilldown" : "014", - "y" : 98, - "name" : "#014" - }, - { - "name" : "#015", - "drilldown" : "015", - "y" : 95 - }, - { - "name" : "#016", - "drilldown" : "016", - "y" : 75 - }, - { - "drilldown" : "017", - "y" : 83, - "name" : "#017" - }, - { - "drilldown" : "018", - "y" : 82, - "name" : "#018" - }, - { - "drilldown" : "019", - "y" : 101, - "name" : "#019" - }, - { - "name" : "#020", - "drilldown" : "020", - "y" : 100 - }, - { - "name" : "#021", - "y" : 72, - "drilldown" : "021" - }, - { - "name" : "#022", - "drilldown" : "022", - "y" : 72 - }, - { - "y" : 88, - "drilldown" : "023", - "name" : "#023" - }, - { - "name" : "#024", - "drilldown" : "024", - "y" : 77 - }, - { - "name" : "#025", - "drilldown" : "025", - "y" : 62 - }, - { - "y" : 75, - "drilldown" : "026", - "name" : "#026" - }, - { - "name" : "#027", - "drilldown" : "027", - "y" : 64 - }, - { - "y" : 82, - "drilldown" : "028", - "name" : "#028" - }, - { - "name" : "#029", - "drilldown" : "029", - "y" : 83 - }, - { - "drilldown" : "030", - "y" : 120, - "name" : "#030" - }, - { - "name" : "#031", - "drilldown" : "031", - "y" : 93 - }, - { - "y" : 97, - "drilldown" : "032", - "name" : "#032" - }, - { - "name" : "#033", - "y" : 113, - "drilldown" : "033" - }, - { - "drilldown" : "034", - "y" : 70, - "name" : "#034" - }, - { - "name" : "#035", - "y" : 68, - "drilldown" : "035" - }, - { - "name" : "#036", - "y" : 70, - "drilldown" : "036" - }, - { - "name" : "#037", - "y" : 70, - "drilldown" : "037" - }, - { - "drilldown" : "038", - "y" : 74, - "name" : "#038" - }, - { - "y" : 68, - "drilldown" : "039", - "name" : "#039" - }, - { - "name" : "#040", - "drilldown" : "040", - "y" : 77 - }, - { - "y" : 80, - "drilldown" : "041", - "name" : "#041" - } - ], - "name" : "The Weekly Challenge Languages", - "colorByPoint" : "true" - } - ], "drilldown" : { "series" : [ { - "id" : "001", - "name" : "001", "data" : [ [ "Perl", @@ -249,11 +23,11 @@ "Blog", 12 ] - ] + ], + "name" : "001", + "id" : "001" }, { - "id" : "002", - "name" : "002", "data" : [ [ "Perl", @@ -267,7 +41,9 @@ "Blog", 10 ] - ] + ], + "name" : "002", + "id" : "002" }, { "data" : [ @@ -288,7 +64,7 @@ "id" : "003" }, { - "id" : "004", + "name" : "004", "data" : [ [ "Perl", @@ -303,7 +79,7 @@ 10 ] ], - "name" : "004" + "id" : "004" }, { "id" : "005", @@ -342,6 +118,7 @@ "name" : "006" }, { + "id" : "007", "name" : "007", "data" : [ [ @@ -356,10 +133,10 @@ "Blog", 10 ] - ], - "id" : "007" + ] }, { + "id" : "008", "name" : "008", "data" : [ [ @@ -374,11 +151,10 @@ "Blog", 12 ] - ], - "id" : "008" + ] }, { - "id" : "009", + "name" : "009", "data" : [ [ "Perl", @@ -393,10 +169,9 @@ 13 ] ], - "name" : "009" + "id" : "009" }, { - "id" : "010", "data" : [ [ "Perl", @@ -411,10 +186,11 @@ 11 ] ], - "name" : "010" + "name" : "010", + "id" : "010" }, { - "id" : "011", + "name" : "011", "data" : [ [ "Perl", @@ -429,10 +205,9 @@ 10 ] ], - "name" : "011" + "id" : "011" }, { - "name" : "012", "data" : [ [ "Perl", @@ -447,11 +222,11 @@ 11 ] ], + "name" : "012", "id" : "012" }, { "id" : "013", - "name" : "013", "data" : [ [ "Perl", @@ -465,9 +240,12 @@ "Blog", 13 ] - ] + ], + "name" : "013" }, { + "id" : "014", + "name" : "014", "data" : [ [ "Perl", @@ -481,11 +259,10 @@ "Blog", 15 ] - ], - "name" : "014", - "id" : "014" + ] }, { + "id" : "015", "name" : "015", "data" : [ [ @@ -500,8 +277,7 @@ "Blog", 15 ] - ], - "id" : "015" + ] }, { "data" : [ @@ -541,7 +317,6 @@ }, { "id" : "018", - "name" : "018", "data" : [ [ "Perl", @@ -555,10 +330,10 @@ "Blog", 14 ] - ] + ], + "name" : "018" }, { - "name" : "019", "data" : [ [ "Perl", @@ -573,10 +348,11 @@ 13 ] ], + "name" : "019", "id" : "019" }, { - "name" : "020", + "id" : "020", "data" : [ [ "Perl", @@ -591,11 +367,10 @@ 13 ] ], - "id" : "020" + "name" : "020" }, { "id" : "021", - "name" : "021", "data" : [ [ "Perl", @@ -609,9 +384,12 @@ "Blog", 10 ] - ] + ], + "name" : "021" }, { + "id" : "022", + "name" : "022", "data" : [ [ "Perl", @@ -625,11 +403,10 @@ "Blog", 10 ] - ], - "name" : "022", - "id" : "022" + ] }, { + "id" : "023", "data" : [ [ "Perl", @@ -644,11 +421,9 @@ 12 ] ], - "name" : "023", - "id" : "023" + "name" : "023" }, { - "id" : "024", "data" : [ [ "Perl", @@ -663,7 +438,8 @@ 11 ] ], - "name" : "024" + "name" : "024", + "id" : "024" }, { "id" : "025", @@ -684,7 +460,6 @@ "name" : "025" }, { - "id" : "026", "name" : "026", "data" : [ [ @@ -699,11 +474,10 @@ "Blog", 10 ] - ] + ], + "id" : "026" }, { - "id" : "027", - "name" : "027", "data" : [ [ "Perl", @@ -717,10 +491,12 @@ "Blog", 9 ] - ] + ], + "name" : "027", + "id" : "027" }, { - "id" : "028", + "name" : "028", "data" : [ [ "Perl", @@ -735,10 +511,9 @@ 9 ] ], - "name" : "028" + "id" : "028" }, { - "id" : "029", "name" : "029", "data" : [ [ @@ -753,10 +528,10 @@ "Blog", 12 ] - ] + ], + "id" : "029" }, { - "name" : "030", "data" : [ [ "Perl", @@ -771,11 +546,10 @@ 10 ] ], + "name" : "030", "id" : "030" }, { - "id" : "031", - "name" : "031", "data" : [ [ "Perl", @@ -789,9 +563,13 @@ "Blog", 9 ] - ] + ], + "name" : "031", + "id" : "031" }, { + "id" : "032", + "name" : "032", "data" : [ [ "Perl", @@ -805,9 +583,7 @@ "Blog", 10 ] - ], - "name" : "032", - "id" : "032" + ] }, { "name" : "033", @@ -828,6 +604,7 @@ "id" : "033" }, { + "name" : "034", "data" : [ [ "Perl", @@ -842,11 +619,10 @@ 11 ] ], - "name" : "034", "id" : "034" }, { - "name" : "035", + "id" : "035", "data" : [ [ "Perl", @@ -861,9 +637,10 @@ 9 ] ], - "id" : "035" + "name" : "035" }, { + "name" : "036", "data" : [ [ "Perl", @@ -878,7 +655,6 @@ 11 ] ], - "name" : "036", "id" : "036" }, { @@ -901,7 +677,6 @@ }, { "id" : "038", - "name" : "038", "data" : [ [ "Perl", @@ -915,10 +690,10 @@ "Blog", 12 ] - ] + ], + "name" : "038" }, { - "id" : "039", "data" : [ [ "Perl", @@ -933,9 +708,11 @@ 12 ] ], - "name" : "039" + "name" : "039", + "id" : "039" }, { + "id" : "040", "data" : [ [ "Perl", @@ -950,10 +727,10 @@ 10 ] ], - "name" : "040", - "id" : "040" + "name" : "040" }, { + "id" : "041", "data" : [ [ "Perl", @@ -968,24 +745,247 @@ 9 ] ], - "name" : "041", - "id" : "041" + "name" : "041" } ] }, "plotOptions" : { "series" : { - "borderWidth" : 0, "dataLabels" : { "format" : "{point.y}", "enabled" : 1 - } + }, + "borderWidth" : 0 } }, + "title" : { + "text" : "The Weekly Challenge Language" + }, + "legend" : { + "enabled" : "false" + }, + "tooltip" : { + "headerFormat" : "", + "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
" + }, "chart" : { "type" : "column" }, - "title" : { - "text" : "The Weekly Challenge Language" - } + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-26 09:15:23 GMT" + }, + "series" : [ + { + "name" : "The Weekly Challenge Languages", + "data" : [ + { + "name" : "#001", + "y" : 165, + "drilldown" : "001" + }, + { + "name" : "#002", + "drilldown" : "002", + "y" : 133 + }, + { + "drilldown" : "003", + "y" : 91, + "name" : "#003" + }, + { + "name" : "#004", + "y" : 106, + "drilldown" : "004" + }, + { + "name" : "#005", + "drilldown" : "005", + "y" : 82 + }, + { + "y" : 63, + "drilldown" : "006", + "name" : "#006" + }, + { + "name" : "#007", + "y" : 71, + "drilldown" : "007" + }, + { + "name" : "#008", + "drilldown" : "008", + "y" : 82 + }, + { + "name" : "#009", + "drilldown" : "009", + "y" : 79 + }, + { + "name" : "#010", + "drilldown" : "010", + "y" : 69 + }, + { + "name" : "#011", + "drilldown" : "011", + "y" : 86 + }, + { + "y" : 90, + "drilldown" : "012", + "name" : "#012" + }, + { + "drilldown" : "013", + "y" : 85, + "name" : "#013" + }, + { + "name" : "#014", + "y" : 98, + "drilldown" : "014" + }, + { + "name" : "#015", + "drilldown" : "015", + "y" : 95 + }, + { + "name" : "#016", + "drilldown" : "016", + "y" : 75 + }, + { + "name" : "#017", + "y" : 83, + "drilldown" : "017" + }, + { + "name" : "#018", + "y" : 82, + "drilldown" : "018" + }, + { + "name" : "#019", + "y" : 101, + "drilldown" : "019" + }, + { + "name" : "#020", + "drilldown" : "020", + "y" : 100 + }, + { + "drilldown" : "021", + "y" : 72, + "name" : "#021" + }, + { + "name" : "#022", + "drilldown" : "022", + "y" : 72 + }, + { + "y" : 88, + "drilldown" : "023", + "name" : "#023" + }, + { + "name" : "#024", + "y" : 77, + "drilldown" : "024" + }, + { + "y" : 62, + "drilldown" : "025", + "name" : "#025" + }, + { + "name" : "#026", + "y" : 75, + "drilldown" : "026" + }, + { + "drilldown" : "027", + "y" : 64, + "name" : "#027" + }, + { + "drilldown" : "028", + "y" : 82, + "name" : "#028" + }, + { + "name" : "#029", + "y" : 83, + "drilldown" : "029" + }, + { + "name" : "#030", + "drilldown" : "030", + "y" : 120 + }, + { + "name" : "#031", + "drilldown" : "031", + "y" : 93 + }, + { + "drilldown" : "032", + "y" : 97, + "name" : "#032" + }, + { + "name" : "#033", + "drilldown" : "033", + "y" : 113 + }, + { + "drilldown" : "034", + "y" : 70, + "name" : "#034" + }, + { + "drilldown" : "035", + "y" : 68, + "name" : "#035" + }, + { + "name" : "#036", + "y" : 70, + "drilldown" : "036" + }, + { + "drilldown" : "037", + "y" : 70, + "name" : "#037" + }, + { + "y" : 74, + "drilldown" : "038", + "name" : "#038" + }, + { + "name" : "#039", + "drilldown" : "039", + "y" : 68 + }, + { + "name" : "#040", + "y" : 77, + "drilldown" : "040" + }, + { + "y" : 80, + "drilldown" : "041", + "name" : "#041" + } + ], + "colorByPoint" : "true" + } + ] } diff --git a/stats/pwc-language-breakdown-2020.json b/stats/pwc-language-breakdown-2020.json index 909fc915c4..f69489fe78 100644 --- a/stats/pwc-language-breakdown-2020.json +++ b/stats/pwc-language-breakdown-2020.json @@ -1,22 +1,9 @@ { - "title" : { - "text" : "The Weekly Challenge Language" - }, - "chart" : { - "type" : "column" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-26 09:15:23 GMT" }, "series" : [ { - "colorByPoint" : "true", "data" : [ { "name" : "#042", @@ -24,14 +11,14 @@ "drilldown" : "042" }, { - "drilldown" : "043", + "name" : "#043", "y" : 72, - "name" : "#043" + "drilldown" : "043" }, { - "drilldown" : "044", + "name" : "#044", "y" : 90, - "name" : "#044" + "drilldown" : "044" }, { "y" : 102, @@ -40,27 +27,27 @@ }, { "name" : "#046", - "drilldown" : "046", - "y" : 93 + "y" : 93, + "drilldown" : "046" }, { - "name" : "#047", "y" : 88, - "drilldown" : "047" + "drilldown" : "047", + "name" : "#047" }, { - "name" : "#048", + "y" : 112, "drilldown" : "048", - "y" : 112 + "name" : "#048" }, { - "y" : 93, "drilldown" : "049", + "y" : 93, "name" : "#049" }, { - "drilldown" : "050", "y" : 104, + "drilldown" : "050", "name" : "#050" }, { @@ -69,29 +56,29 @@ "name" : "#051" }, { - "y" : 93, + "name" : "#052", "drilldown" : "052", - "name" : "#052" + "y" : 93 }, { - "y" : 105, "drilldown" : "053", + "y" : 105, "name" : "#053" }, { - "drilldown" : "054", "y" : 107, + "drilldown" : "054", "name" : "#054" }, { - "y" : 92, + "name" : "#055", "drilldown" : "055", - "name" : "#055" + "y" : 92 }, { - "name" : "#056", + "drilldown" : "056", "y" : 104, - "drilldown" : "056" + "name" : "#056" }, { "y" : 86, @@ -100,8 +87,8 @@ }, { "name" : "#058", - "drilldown" : "058", - "y" : 71 + "y" : 71, + "drilldown" : "058" }, { "name" : "#059", @@ -115,8 +102,8 @@ }, { "name" : "#061", - "y" : 85, - "drilldown" : "061" + "drilldown" : "061", + "y" : 85 }, { "y" : 62, @@ -124,14 +111,14 @@ "name" : "#062" }, { + "name" : "#063", "drilldown" : "063", - "y" : 93, - "name" : "#063" + "y" : 93 }, { - "y" : 84, + "name" : "#064", "drilldown" : "064", - "name" : "#064" + "y" : 84 }, { "name" : "#065", @@ -144,9 +131,9 @@ "drilldown" : "066" }, { - "name" : "#067", + "y" : 94, "drilldown" : "067", - "y" : 94 + "name" : "#067" }, { "name" : "#068", @@ -159,9 +146,9 @@ "y" : 87 }, { - "drilldown" : "070", + "name" : "#070", "y" : 98, - "name" : "#070" + "drilldown" : "070" }, { "name" : "#071", @@ -170,13 +157,13 @@ }, { "name" : "#072", - "drilldown" : "072", - "y" : 116 + "y" : 116, + "drilldown" : "072" }, { + "name" : "#073", "y" : 112, - "drilldown" : "073", - "name" : "#073" + "drilldown" : "073" }, { "drilldown" : "074", @@ -184,19 +171,19 @@ "name" : "#074" }, { - "name" : "#075", "y" : 117, - "drilldown" : "075" + "drilldown" : "075", + "name" : "#075" }, { "name" : "#076", - "drilldown" : "076", - "y" : 101 + "y" : 10