The problem collection "109 Python Problems for CCPS 109" is now complete, and no further problems will ever be added to this collection. In addition to the actual problems, the collection 109 Python problems for CCPS 109 includes fourteen bonus problems intended for students who are looking for a serious challenge. For personal reasons, it is extremely important to me that all these bonus problem specifications and their private model solutions contain no bugs, so that the checksums hardcoded in the automated tester are true and achievable by everyone who chooses to work hard to solve these problems.
I will therefore offer a bounty of 100 CAD for each bonus problem to the first person to email me (ilkka.kokkarinen@gmail.com) a working solution to pass my automated tests for that problem. The solution must pass these tests within the twenty second time limit when executed on my machine. This bounty is paid to Sick Kids Toronto. And for whatever it's worth, you get your name permanently displayed in the table below as long as this problem collection exists.
To keep this fair and interesting, each individual person can get at most one bounty. These bounties are available only for the bonus problems; solutions to the 109 actual problems do not qualify.
Problem | Bounty claimed |
110: Reverse the Rule 110 | Karel Tutsu, October 22, 2022 |
111: Aye, eye, I | John Hodgins, April 17, 2023 |
112: Count domino tilings | Maxim Olatoye, July 8, 2023 |
113: Invaders must die | |
114: Stepping stones | Alan Pangnathip, Nov 21, 2022 |
115: Ex iudiciis, lux | |
116: Flatland golf | Dennis Kaydalov, Nov 2, 2023 |
117: TextmirrororrimtxeT | "George Hotz", October 24, 2022 |
118: Hy-phen-a-tion by com-pu-ter | Cindy Hua, November 13, 2022 |
119: Jealous vs. zealous | GPT-4, March 28, 2023 |
120: Count the permorsetations | George Zhang, October 30, 2022 |
121: Count your lucky sevens | Felix Nguyen, Dec 18, 2022 |
122: Forks on the Gin Lane | |
123: One, two, three, grow old with me |
Starting March 2023, the author started creating another set of Python problems, separate from the main corpus of the 109 Python Problems. (One can only quit for so long without the inevitable relapse.) The following problems don't have paid bounties, but the first person to submit a working solution for each of the following problems will still get their name etched in the table below for perpetuity. Unlike the above list of bonus problems, each student is allowed to get several bounties from this list of additional problems. There are no monetary bounties for the following problems, though, just the bragging rights and the good feeling for the work well done.
Problem | Bounty claimed |
The Fischer King | Karel Tutsu, June 7, 2023 |
Multiplicative persistence | Karel Tutsu, June 7, 2023 |
Top of the swops | Karel Tutsu, June 7, 2023 |
Lowest common dominator | |
Discrete rounding | Karel Tutsu, June 7, 2023 |
Ifs and butts | |
Deterministic finite automata | |
The parking lot is full | |
Count possible triangles | |
Arrow walk with me | |
Count Friday the Thirteenths | |
Median filter | |
Nondeterministic finite automata | |
Count unicolour rectangles | |
Translate | |
Count palindromic substrings | Karel Tutsu, June 13, 2023 |
Square lamplighter | |
Longest mirrored substring | |
And they walk in twos or threes or more | |
Reasonable filename comparison | Anonymous, July 8, 2023 |
Count Langford violations | Anonymous, July 8, 2023 |
Ten pins, not six, Dolores | Karel Tutsu, June 7, 2023 |
Strict majority element | Maxim Olatoye, May 20, 2023 |
Add like an Egyptian | |
Sorting by pairwise swaps | |
Van der Corput sequence | |
Condorcet election | |
It's a game, a reflection | Karel Tutsu, June 11, 2023 |
Reverse a Fibonacci-like sequence | |
Mian–Chowla sequence | Karel Tutsu, June 12, 2023 |
Stern–Brocot path | |
Carryless multiplication | |
A place for everything and everything in its place | |
Scoring a tournament bridge hand | |
Count distinct substrings | |
Replacement with perfect hindsight | |
Replacement with perfect foresight | |
When there's no item, there's no problem | Karel Tutsu, August 30, 2023 |
Boxed away | |
'Tis but a scratch | |
Do or die | |
Arithmetic skip | |
Carving Egyptian fractions | |
Largest square of ones | Maxim Olatoye, June 15, 2023 |
Infection affection | |
Prize strings | |
String shuffle | |
Weak Goodstein sequence | |
Markov distance | |
St. Bitus‘ Dance | |
Digit string partition | |
Hofstadter's figure-figure sequences | |
[Be]t[Te]r [C][Al]l [Sm][Al]l | |
Total covered area | Karel Tutsu, September 1, 2023 |
Balsam for the code | Nam Nguyen, March 6, 2024 |
Flip those trips | |
Maximal disk placement | |
Nice sequence | |
Stern–Brocot path | |
Forbidden digit | |
Shotgun sequence | |
Card row game | Maxim Olatoye, June 18, 2023 |
The remains | |
Count sublists with odd sums | Karel Tutsu, August 30, 2023 |
Tailfins and hamburgers | Nam Nguyen, March 30, 2024 |
Split the digits, maximize the product | |
Tower of cubes | Nam Nguyen, March 6, 2024 |
Gijswijt sequence | |
Minimal Egyptian fractions | |
Sum of consecutive squares | Karel Tutsu, August 30, 2023 |
Domino poppers | |
Balance of power | |
Longest zigzag subsequence | |
Kimberling's expulsion sequence | Nam Nguyen, April 26, 2024 |
Kimberling's repetition-resistant sequence | Nam Nguyen, May 1, 2024 |
Game with multiset | Nam Nguyen, April 26, 2024 |
Tower of Babel | Nam Nguyen, March 6, 2024 |
Make a list self-describing | Nam Nguyen, May 1, 2024 |
Two pins, not three, Dolores | Matt Campeau, April 2, 2024 |
Knight jam | |
Out where the buses don't run | “Shwnzp”, May 26, 2023 |
SMETANA interpreter | Abdul Rahman Al Nabulsi, April 15, 2024 |
The sharpest axes | Nam Nguyen, April 24, 2024 |
Vidrach Itky Leda | Nam Nguyen, May 1, 2024 |
Casinos hate this Toronto man! | |
How's my coding? Call 1-800-3284778 | Karel Tutsu, August 25, 2023 |
Scatter her enemies | Karel Tutsu, March 8, 2023 |
Inverse pair sums | |
Blocking pawns | Nam Nguyen, March 6, 2024 |
Boggles the mind | Mortreza Eivazi, June 30, 2023 |
The round number round | Shane Liu, March 31, 2024 |
Complete a Costas array | Karel Tutsu, August 22, 2023 |
Oppenhoppenheimereimer | John Hodgins, April 20, 2023 |