diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2021-12-24 18:12:34 +0000 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2021-12-24 18:12:34 +0000 |
| commit | 6f518c687f743b68d3eeddedcf3d831aca20d4ec (patch) | |
| tree | f01440eaa86adbfc0faf60e2c5450a9c9778d71e | |
| parent | a8e8bb5692bca4266dfa0ecb457f9b7bd0daf992 (diff) | |
| download | perlweeklychallenge-club-6f518c687f743b68d3eeddedcf3d831aca20d4ec.tar.gz perlweeklychallenge-club-6f518c687f743b68d3eeddedcf3d831aca20d4ec.tar.bz2 perlweeklychallenge-club-6f518c687f743b68d3eeddedcf3d831aca20d4ec.zip | |
- Added solutions by Mark Senn.
| -rw-r--r-- | challenge-144/mark-senn/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-144/mark-senn/blog1.txt | 1 | ||||
| -rw-r--r-- | challenge-144/mark-senn/raku/ch-1.raku | 12 | ||||
| -rw-r--r-- | challenge-144/mark-senn/raku/ch-2.raku | 36 | ||||
| -rw-r--r-- | stats/pwc-current.json | 187 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 68 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1044 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 756 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 50 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 34 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 38 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 96 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-241-270.json | 46 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 110 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 114 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 112 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 548 |
18 files changed, 1685 insertions, 1616 deletions
diff --git a/challenge-144/mark-senn/blog.txt b/challenge-144/mark-senn/blog.txt new file mode 100644 index 0000000000..15e219bf07 --- /dev/null +++ b/challenge-144/mark-senn/blog.txt @@ -0,0 +1 @@ +https://engineering.purdue.edu/~mark/twc-144-1.pdf diff --git a/challenge-144/mark-senn/blog1.txt b/challenge-144/mark-senn/blog1.txt new file mode 100644 index 0000000000..4c782aa3fe --- /dev/null +++ b/challenge-144/mark-senn/blog1.txt @@ -0,0 +1 @@ +https://engineering.purdue.edu/~mark/twc-144-2.pdf diff --git a/challenge-144/mark-senn/raku/ch-1.raku b/challenge-144/mark-senn/raku/ch-1.raku new file mode 100644 index 0000000000..817023cf4c --- /dev/null +++ b/challenge-144/mark-senn/raku/ch-1.raku @@ -0,0 +1,12 @@ +# Generate all semiprime numbers <= 100. +my $n = 100; + +# Make a list of primes. Using primes <= $n/2 is more than enough. +my @prime = (2 .. $n/2).grep(*.is-prime); + +# Multiply each prime by every other prime in the list. +# save the products that are <= 100, +# sort this list numerically, +# save the unique numbers on the list, +# and print the list. +(@prime X* @prime).grep(* <= 100).sort(+*).unique.say; diff --git a/challenge-144/mark-senn/raku/ch-2.raku b/challenge-144/mark-senn/raku/ch-2.raku new file mode 100644 index 0000000000..71002d2cce --- /dev/null +++ b/challenge-144/mark-senn/raku/ch-2.raku @@ -0,0 +1,36 @@ +# Number of Ulam sequence numbers to generate. +my $n = 10; + +# Read $u and $v --- the first and second Ulam sequence numbers. +my $u = $*IN.get; +my $v = $*IN.get; +say "Input: \$u = $u, \$v = $v"; + +# Initialize the Ulam sequence. +my @ulam = ($u, $v); + +while @ulam.elems < $n { + + # Compute @ulam[0]+@ulam[0], @ulam[1]+@ulam[2], ... + # Save all sums that are greater than the last current Ulam sequence element. + # And sort the list numerically. + my @sum = (@ulam X+ @ulam).grep(* > @ulam[*-1]).sort(+*); + + # For each @sum, tally the number of times it occurs. + my %tally = (); + %tally{$_}++ for @sum; + + # Go through the %tally elements in numerically sorted order. + for %tally.keys.sort(+*) { + # If the tally value is two or three, + # then add this tally value to the Ulam sequence, + # and calculate the next Ulam sequence value. + # + # The tally value occurs twice or three times because, + # for example, when computing the forth (1,2)-Ulam sequence + # element, 2 + 4 = 3 + 3 = 4 + 2. + (%tally{$_} == 2|3) and @ulam.push($_), last + } +} + +say "Output: {@ulam.join(', ')}"; diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 76626444e2..2e0af509c6 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,4 +1,7 @@ { + "title" : { + "text" : "The Weekly Challenge - 144" + }, "drilldown" : { "series" : [ { @@ -12,8 +15,8 @@ 2 ] ], - "id" : "Athanasius", - "name" : "Athanasius" + "name" : "Athanasius", + "id" : "Athanasius" }, { "data" : [ @@ -26,12 +29,12 @@ 1 ] ], - "id" : "Dave Jacoby", - "name" : "Dave Jacoby" + "name" : "Dave Jacoby", + "id" : "Dave Jacoby" }, { - "name" : "David Santiago", "id" : "David Santiago", + "name" : "David Santiago", "data" : [ [ "Raku", @@ -40,27 +43,26 @@ ] }, { - "id" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], + "id" : "E. Choroba", "name" : "E. Choroba" }, { + "id" : "Jan Krnavek", + "name" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ], - "id" : "Jan Krnavek", - "name" : "Jan Krnavek" + ] }, { - "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -75,9 +77,11 @@ 1 ] ], + "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld" }, { + "id" : "Luca Ferrari", "name" : "Luca Ferrari", "data" : [ [ @@ -88,40 +92,55 @@ "Blog", 4 ] - ], - "id" : "Luca Ferrari" + ] }, { - "name" : "Mark Anderson", - "id" : "Mark Anderson", "data" : [ [ "Raku", 1 ] - ] + ], + "id" : "Mark Anderson", + "name" : "Mark Anderson" }, { + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 2 + ] + ], + "name" : "Mark Senn", + "id" : "Mark Senn" + }, + { + "name" : "Mohammad S Anwar", "id" : "Mohammad S Anwar", "data" : [ [ "Perl", 1 ] - ], - "name" : "Mohammad S Anwar" + ] }, { - "name" : "Paulo Custodio", - "id" : "Paulo Custodio", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Paulo Custodio", + "id" : "Paulo Custodio" }, { + "id" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -131,19 +150,17 @@ "Blog", 1 ] - ], - "id" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith" + ] }, { - "name" : "Robert DiCicco", - "id" : "Robert DiCicco", "data" : [ [ "Perl", 1 ] - ] + ], + "id" : "Robert DiCicco", + "name" : "Robert DiCicco" }, { "name" : "Roger Bell_West", @@ -175,6 +192,7 @@ }, { "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -184,10 +202,10 @@ "Raku", 2 ] - ], - "name" : "Ulrich Rieke" + ] }, { + "id" : "W. Luis Mochan", "name" : "W. Luis Mochan", "data" : [ [ @@ -198,99 +216,79 @@ "Blog", 1 ] - ], - "id" : "W. Luis Mochan" + ] } ] }, "chart" : { "type" : "column" }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "title" : { - "text" : "The Weekly Challenge - 144" - }, "subtitle" : { - "text" : "[Champions: 16] Last updated at 2021-12-24 01:57:45 GMT" - }, - "tooltip" : { - "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", - "followPointer" : 1, - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "xAxis" : { - "type" : "category" + "text" : "[Champions: 17] Last updated at 2021-12-24 18:10:59 GMT" }, "series" : [ { + "name" : "The Weekly Challenge - 144", "data" : [ { "drilldown" : "Athanasius", - "name" : "Athanasius", - "y" : 4 + "y" : 4, + "name" : "Athanasius" }, { - "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby", "y" : 3, - "name" : "Dave Jacoby" + "drilldown" : "Dave Jacoby" }, { - "name" : "David Santiago", "y" : 1, - "drilldown" : "David Santiago" + "drilldown" : "David Santiago", + "name" : "David Santiago" }, { + "name" : "E. Choroba", "drilldown" : "E. Choroba", - "y" : 2, - "name" : "E. Choroba" + "y" : 2 }, { - "y" : 2, "name" : "Jan Krnavek", - "drilldown" : "Jan Krnavek" + "drilldown" : "Jan Krnavek", + "y" : 2 }, { + "drilldown" : "Laurent Rosenfeld", "y" : 5, - "name" : "Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld" + "name" : "Laurent Rosenfeld" }, { - "drilldown" : "Luca Ferrari", "name" : "Luca Ferrari", - "y" : 6 + "y" : 6, + "drilldown" : "Luca Ferrari" }, { - "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", "y" : 1, - "drilldown" : "Mark Anderson" + "name" : "Mark Anderson" + }, + { + "y" : 4, + "drilldown" : "Mark Senn", + "name" : "Mark Senn" }, { - "y" : 1, "name" : "Mohammad S Anwar", + "y" : 1, "drilldown" : "Mohammad S Anwar" }, { - "name" : "Paulo Custodio", "y" : 2, - "drilldown" : "Paulo Custodio" + "drilldown" : "Paulo Custodio", + "name" : "Paulo Custodio" }, { + "drilldown" : "Peter Campbell Smith", "y" : 3, - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith" + "name" : "Peter Campbell Smith" }, { "name" : "Robert DiCicco", @@ -298,30 +296,51 @@ "drilldown" : "Robert DiCicco" }, { - "y" : 5, "name" : "Roger Bell_West", + "y" : 5, "drilldown" : "Roger Bell_West" }, { - "drilldown" : "Simon Green", "y" : 2, + "drilldown" : "Simon Green", "name" : "Simon Green" }, { "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke", - "y" : 4 + "y" : 4, + "name" : "Ulrich Rieke" }, { "drilldown" : "W. Luis Mochan", - "name" : "W. Luis Mochan", - "y" : 3 + "y" : 3, + "name" : "W. Luis Mochan" } ], - "name" : "The Weekly Challenge - 144", "colorByPoint" : 1 } ], + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "tooltip" : { + "followPointer" : 1, + "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>" + }, + "xAxis" : { + "type" : "category" + }, "legend" : { "enabled" : 0 } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index a4ee4b9aa8..0bea008ac7 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,38 +1,49 @@ { - "chart" : { - "type" : "column" - }, - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2021]" - }, "subtitle" : { - "text" : "Last updated at 2021-12-24 01:57:45 GMT" + "text" : "Last updated at 2021-12-24 18:10:59 GMT" + }, + "legend" : { + "enabled" : "false" }, "xAxis" : { - "type" : "category", "labels" : { "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" } - } + }, + "type" : "category" + }, + "chart" : { + "type" : "column" }, "tooltip" : { "pointFormat" : "<b>{point.y:.0f}</b>" }, + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, "series" : [ { - "name" : "Contributions", + "dataLabels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "rotation" : -90, + "color" : "#FFFFFF", + "align" : "right", + "enabled" : "true", + "format" : "{point.y:.0f}", + "y" : 10 + }, "data" : [ [ "Blog", - 2115 + 2117 ], [ "Perl", @@ -40,24 +51,13 @@ ], [ "Raku", - 4179 + 4181 ] ], - "dataLabels" : { - "enabled" : "true", - "rotation" : -90, - "align" : "right", - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "y" : 10, - "format" : "{point.y:.0f}", - "color" : "#FFFFFF" - } + "name" : "Contributions" } ], - "legend" : { - "enabled" : "false" + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2021]" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index c9f122fab1..d16249b990 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,111 +1,131 @@ { + "tooltip" : { + "headerFormat" : "<span style=\"font-size:11px\"></span>", + "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>", + "followPointer" : "true" + }, "legend" : { "enabled" : "false" }, + "xAxis" : { + "type" : "category" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } + }, "series" : [ { - "colorByPoint" : "true", - "name" : "The Weekly Challenge Languages", "data" : [ { + "drilldown" : "001", "y" : 161, - "name" : "#001", - "drilldown" : "001" + "name" : "#001" }, { - "drilldown" : "002", + "name" : "#002", "y" : 125, - "name" : "#002" + "drilldown" : "002" }, { + "drilldown" : "003", "y" : 83, - "name" : "#003", - "drilldown" : "003" + "name" : "#003" }, { + "name" : "#004", "drilldown" : "004", - "y" : 99, - "name" : "#004" + "y" : 99 }, { "y" : 78, - "name" : "#005", - "drilldown" : "005" + "drilldown" : "005", + "name" : "#005" }, { - "drilldown" : "006", "name" : "#006", + "drilldown" : "006", "y" : 58 }, { - "name" : "#007", + "drilldown" : "007", "y" : 64, - "drilldown" : "007" + "name" : "#007" }, { - "drilldown" : "008", + "name" : "#008", "y" : 78, - "name" : "#008" + "drilldown" : "008" }, { - "drilldown" : "009", "name" : "#009", - "y" : 76 + "y" : 76, + "drilldown" : "009" }, { + "name" : "#010", "drilldown" : "010", - "y" : 65, - "name" : "#010" + "y" : 65 }, { - "name" : "#011", "y" : 85, - "drilldown" : "011" + "drilldown" : "011", + "name" : "#011" }, { + "drilldown" : "012", "y" : 89, - "name" : "#012", - "drilldown" : "012" + "name" : "#012" }, { - "y" : 85, "name" : "#013", - "drilldown" : "013" + "drilldown" : "013", + "y" : 85 }, { "drilldown" : "014", - "name" : "#014", - "y" : 101 + "y" : 101, + "name" : "#014" }, { - "drilldown" : "015", "y" : 99, + "drilldown" : "015", "name" : "#015" }, { - "drilldown" : "016", "name" : "#016", + "drilldown" : "016", "y" : 71 }, { - "drilldown" : "017", "y" : 84, + "drilldown" : "017", "name" : "#017" }, { "name" : "#018", - "y" : 81, - "drilldown" : "018" + "drilldown" : "018", + "y" : 81 }, { + "name" : "#019", "drilldown" : "019", - "y" : 103, - "name" : "#019" + "y" : 103 }, { - "drilldown" : "020", "name" : "#020", - "y" : 101 + "y" : 101, + "drilldown" : "020" }, { "drilldown" : "021", @@ -113,18 +133,18 @@ "name" : "#021" }, { - "y" : 68, "name" : "#022", - "drilldown" : "022" + "drilldown" : "022", + "y" : 68 }, { - "drilldown" : "023", "name" : "#023", - "y" : 97 + "y" : 97, + "drilldown" : "023" }, { - "drilldown" : "024", "name" : "#024", + "drilldown" : "024", "y" : 75 }, { @@ -133,99 +153,99 @@ "drilldown" : "025" }, { + "drilldown" : "026", "y" : 74, - "name" : "#026", - "drilldown" : "026" + "name" : "#026" }, { "name" : "#027", - "y" : 62, - "drilldown" : "027" + "drilldown" : "027", + "y" : 62 }, { - "name" : "#028", + "drilldown" : "028", "y" : 82, - "drilldown" : "028" + "name" : "#028" }, { + "name" : "#029", "drilldown" : "029", - "y" : 81, - "name" : "#029" + "y" : 81 }, { - "y" : 119, "name" : "#030", + "y" : 119, "drilldown" : "030" }, { "y" : 91, - "name" : "#031", - "drilldown" : "031" + "drilldown" : "031", + "name" : "#031" }, { - "y" : 96, "name" : "#032", - "drilldown" : "032" + "drilldown" : "032", + "y" : 96 }, { - "drilldown" : "033", "name" : "#033", - "y" : 112 + "y" : 112, + "drilldown" : "033" }, { "y" : 66, - "name" : "#034", - "drilldown" : "034" + "drilldown" : "034", + "name" : "#034" }, { - "name" : "#035", "y" : 64, - "drilldown" : "035" + "drilldown" : "035", + "name" : "#035" }, { + "y" : 68, "drilldown" : "036", - "name" : "#036", - "y" : 68 + "name" : "#036" }, { - "y" : 67, "name" : "#037", + "y" : 67, "drilldown" : "037" }, { + "y" : 68, "drilldown" : "038", - "name" : "#038", - "y" : 68 + "name" : "#038" }, { - "name" : "#039", "y" : 62, - "drilldown" : "039" + "drilldown" : "039", + "name" : "#039" }, { + "y" : 73, "drilldown" : "040", - "name" : "#040", - "y" : 73 + "name" : "#040" }, { - "drilldown" : "041", "name" : "#041", - "y" : 76 + "y" : 76, + "drilldown" : "041" }, { - "y" : 92, "name" : "#042", - "drilldown" : "042" + "drilldown" : "042", + "y" : 92 }, { - "drilldown" : "043", "name" : "#043", - "y" : 68 + "y" : 68, + "drilldown" : "043" }, { - "drilldown" : "044", "name" : "#044", - "y" : 85 + "y" : 85, + "drilldown" : "044" }, { "name" : "#045", @@ -233,59 +253,59 @@ "drilldown" : "045" }, { - "name" : "#046", "y" : 87, - "drilldown" : "046" + "drilldown" : "046", + "name" : "#046" }, { - "name" : "#047", "y" : 84, - "drilldown" : "047" + "drilldown" : "047", + "name" : "#047" }, { - "name" : "#048", "y" : 108, - "drilldown" : "048" + "drilldown" : "048", + "name" : "#048" }, { "name" : "#049", - "y" : 89, - "drilldown" : "049" + "drilldown" : "049", + "y" : 89 }, { "drilldown" : "050", - "name" : "#050", - "y" : 98 + "y" : 98, + "name" : "#050" }, { + "name" : "#051", "drilldown" : "051", - "y" : 89, - "name" : "#051" + "y" : 89 }, { - "y" : 91, "name" : "#052", - "drilldown" : "052" + "drilldown" : "052", + "y" : 91 }, { - "name" : "#053", "y" : 101, - "drilldown" : "053" + "drilldown" : "053", + "name" : "#053" }, { - "name" : "#054", "y" : 103, - "drilldown" : "054" + "drilldown" : "054", + "name" : "#054" }, { - "drilldown" : "055", + "name" : "#055", "y" : 88, - "name" : "#055" + "drilldown" : "055" }, { - "name" : "#056", "y" : 95, - "drilldown" : "056" + "drilldown" : "056", + "name" : "#056" }, { "name" : "#057", @@ -293,94 +313,94 @@ "drilldown" : "057" }, { + "y" : 69, "drilldown" : "058", - "name" : "#058", - "y" : 69 + "name" : "#058" }, { - "y" : 89, "name" : "#059", - "drilldown" : "059" + "drilldown" : "059", + "y" : 89 }, { + "drilldown" : "060", "y" : 85, - "name" : "#060", - "drilldown" : "060" + "name" : "#060" }, { - "y" : 81, "name" : "#061", - "drilldown" : "061" + "drilldown" : "061", + "y" : 81 }, { - "drilldown" : "062", "y" : 58, + "drilldown" : "062", "name" : "#062" }, { - "drilldown" : "063", "y" : 89, + "drilldown" : "063", "name" : "#063" }, { - "name" : "#064", "y" : 80, - "drilldown" : "064" + "dri |
