The Weekly Challenge - 226

Monday, Jul 17, 2023| Tags: Perl, Raku

TABLE OF CONTENTS


01. HEADLINES

02. SPONSOR

03. RECAP

04. PERL REVIEW

05. RAKU REVIEW

06. CHART

07. NEW MEMBERS

08. GUESTS

09. TASK #1: Shuffle String

10. TASK #2: Zero Array


HEADLINES


Welcome to the Week #226 of The Weekly Challenge.

Let us all welcome a new member, Dan Friedman, an expert Perl hacker to the Team PWC.

We got the detailed conversation with the latest champion, Avery Adams. You really don’t want to miss it. Please do check it out yourself.

As you all know, we had The Perl and Raku Conference 2023 last week. I had the pleasure to attend the conference. I was lucky to meet so many members of Team PWC. I would like to specially mention, Bruce Gray, Joelle Maslak, Saif Ahmed, Dave Cross, Steven Lembark, Kang-min Liu and Walt Mankowski.

It was pleasant meeting, Sarah Gray, wife of Bruce Gray. She was helping the team running the conference smoothly.


Presentation @ TPRC 2023





I would like to thank, Early Club Members, for helping me with review of weekly challenge tasks every week. You help me avoid embarrassment. If anyone willing to join the club, please feel free to send me request and I will add you to the club.

I am aware that sometimes task is not clearly explained and make it harder for you all to solve it. I appreciate your understanding and taking the effort to solve it still. You all deserve, a big round of applause.

Today, we are giving away Coupon #48 to PokGoPun for the book, Learning Perl Exercises by brian d foy. I will share the details with you in a separate email.


PAST WINNERS

  S. No.    Name S. No.  Name
1.  Cheok-Yin Fung 2.  W. Luis Mochan
3.  Robert DiCicco 4.  Kueppo Wesley
5.  Solathian 6.  Dario Mazzeo
7.  Peter Campbell Smith   8.  Kjetil Skotheim
9.  Neils van Dijke 10.  Laurent Rosenfeld  
11.  Duncan C. White 12.  Ali Moradi
13.  Jorg Sommrey 14.  James Smith
15.  Alexander Pankoff 16.  Simon Green
17.  Robbie Hatley 18.  Bob Lied
19.  Athanasius 20.  David Ferrone
21.  Thomas Kohler 22.  Adam Russell
23.  E. Choroba 24.  Pip Stuart
25.  Roger Bell_West 26.  Flavio Poletti
27.  Dave Jacoby 28.  Mariano Spadaccini
29.  Lubos Kolouch 30.  Matthew Neleigh
31.  Paulo Custodio 32.  Tyler Bird
33.  Carlos Oliveira 34.  Avery Adams
35.  Matthias Muth 36.  Leo Manfredi
37.  Peter Meszaros 38.  Arne Sommer
39.  Jaldhar H. Vyas 40.  Mark Anderson
41.  Rob Turner 42.  BarrOff
43.  Robert Ransbottom 44.  Andreas Voegele
45.  Jan Krnavek 46.  Steven Wilson
47.  Bruce Gray 48.
49. 50.

Last 5 weeks mainstream contribution stats. Thank you Team PWC for your support and encouragements.

  Week      Perl       Raku       Blog   
   221       39       27       16   
   222       56       30       19   
   223       44       25       16   
   224       38       21       15   
   225       56       31       24   

Last 5 weeks guest contribution stats. Thank you each and every guest contributors for your time and efforts.

  Week      Guests       Contributions       Languages   
   221       07       23       09   
   222       10       41       14   
   223       09       37       13   
   224       08       32       13   
   225       13       63       21   



TOP 10 Guest Languages


Do you see your favourite language in the Top 10? If not then why not contribute regularly and make it to the top.

 1. Python  (1666)
 2. Haskell (566)
 3. Ruby    (543)
 4. Lua     (487)
 5. C       (431)
 6. Rust    (395)
 7. C++     (389)
 8. BQN     (300)
 9. Go      (258)
10. Java    (238)

Blogs with Creative Title


1. Sentenced To Compute Differences by Adam Russell.

2. Arithmetically Good by Arne Sommer.

3. Words to the Max and Diff Sum by Avery Adams.

4. I m back by Luca Ferrari.

5. Reduce to the max by Matthias Muth.

6. Counting words and subtracting numbers by Peter Campbell Smith.

7. Diffs on the Right, Words on the Left by Roger Bell_West.


GitHub Repository Stats


1. Commits: 33,283 (+122)

2. Pull Requests: 8,379 (+46)

3. Contributors: 226

4. Fork: 286 (+1)

5. Stars: 159



Our solo sponsor Pete Sergeant has been a great support to keep us motivated. We are lucky that he agreed to continue the journey with us in the year 2023. I would like to personally thank Pete and his entire team for their generosity. It would be great if we could add few more to sponsor the prize money so that we could go back and declare weekly champions as we have done in the past. I hope and wish this will become possible in 2023. The amount doesn’t have to be huge. However, it would be nice to show off bunch of supporters. If an organisation comes forward and supports us then that would be the ultimate achievement.


RECAP


Quick recap of The Weekly Challenge - 225 by Mohammad S Anwar.


PERL REVIEW


If you missed any past reviews then please check out the collection.


RAKU REVIEW


If you missed any past reviews then please check out the collection.


CHART


Please take a look at the charts showing interesting data.

I would like to THANK every member of the team for their valuable suggestions. Please do share your experience with us.


NEW MEMBERS


Dan Friedman, an experienced Perl hacker joined the Team PWC.

Please find out How to contribute?, if you have any doubts.

Please try the excellent tool EZPWC created by respected member Saif Ahmed of Team PWC.


GUESTS


Please check out the guest contributions for the Week #225.

Please find past solutions by respected guests. Please share your creative solutions in other languages.


Task 1: Shuffle String

Submitted by: Mohammad S Anwar

You are given a string and an array of indices of same length as string.

Write a script to return the string after re-arranging the indices in the correct order.

Example 1

Input: $string = 'lacelengh', @indices = (3,2,0,5,4,8,6,7,1)
Output: 'challenge'

Example 2

Input: $string = 'rulepark', @indices = (4,7,3,1,0,5,2,6)
Output: 'perlraku'

Task 2: Zero Array

Submitted by: Mohammad S Anwar

You are given an array of non-negative integers, @ints.

Write a script to return the minimum number of operations to make every element equal zero.

In each operation, you are required to pick a positive number less than or equal to the smallest element in the array, then subtract that from each positive element in the array.


Example 1:

Input: @ints = (1, 5, 0, 3, 5)
Output: 3

operation 1: pick 1 => (0, 4, 0, 2, 4)
operation 2: pick 2 => (0, 2, 0, 0, 2)
operation 3: pick 2 => (0, 0, 0, 0, 0)

Example 2:

Input: @ints = (0)
Output: 0

Example 3:

Input: @ints = (2, 1, 4, 0, 3)
Output: 4

operation 1: pick 1 => (1, 0, 3, 0, 2)
operation 2: pick 1 => (0, 0, 2, 0, 1)
operation 3: pick 1 => (0, 0, 1, 0, 0)
operation 4: pick 1 => (0, 0, 0, 0, 0)


Last date to submit the solution 23:59 (UK Time) Sunday 23rd July 2023.


SO WHAT DO YOU THINK ?

If you have any suggestions or ideas then please do share with us.

Contact with me