Daily Challenges
One focused problem per day. Small enough to do before work, hard enough to be worth doing.
How it works
Each file has the problem at the top and the answer collapsed underneath, in
a <details markdown="1"> block. GitHub renders that as a "Show solution" toggle, so you can
read the problem without seeing the answer.
Do this:
- Read the problem and the constraints.
- Set a 20-minute timer and write the code in your own editor.
- Stuck at 10 minutes? Expand Hint only.
- Finished, or out of time? Expand Solution and compare — especially the complexity and the edge cases.
Time-boxing matters more than finishing. An hour of grinding teaches less than 20 minutes followed by reading a good solution.
Layout
daily-challenges/
├── TEMPLATE.md copy this to add a new day
└── 2026/
└── 09/
└── 2026-09-17.md
One file per day, named YYYY-MM-DD.md, filed under YYYY/MM/.
Index
| Date | Challenge | Difficulty | Pattern |
|---|---|---|---|
| 2026-09-17 | Move zeroes to the end, in place | 🟢 Easy | Two pointers |
| 2026-09-18 | Product of array except self | 🟡 Medium | Prefix/suffix products |
| 2026-09-19 | Find the duplicate number | 🔴 Hard | Floyd's cycle detection |
| 2026-09-20 | First unique character in a string | 🟢 Easy | Hash map (count, then scan) |
| 2026-09-21 | Next permutation | 🟡 Medium | In-place array manipulation |
| 2026-09-22 | Trapping rain water | 🔴 Hard | Two pointers + running maxima |
| 2026-09-23 | Interleaving string | 🟡 Medium | DP over two inputs |
| 2026-09-24 | Longest valid parentheses | 🔴 Hard | Stack of indices with a base sentinel |
| 2026-09-25 | Valid Sudoku | 🟢 Easy | Constrained counting (row, column, box) |
| 2026-09-26 | Rotate Image | 🟡 Medium | Matrix transpose + row reversal |
Contributing a day
Copy TEMPLATE.md, fill it in, and add a row to the index above.
The solution must be correct and its complexity stated honestly — see
CONTRIBUTING.md.
Found a mistake? Edit this page on GitHub.