- 🤖 Python solutions for the Jane Street puzzles, using math, algorithms, and helpful Python libraries.
- 🎯 See https://www.janestreet.com/puzzles/current-puzzle/ for the current puzzle.
- 📚 See https://www.janestreet.com/puzzles/archive/ for all past puzzles.
- ⚡ I only post solutions to puzzles whose solution has already been released by Jane Street.
Click on a checkmark in the table below to view the solution for that month.
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014 | ✔ | ✔ | ||||||||||
| 2015 | ✔ | |||||||||||
| 2016 | ✔ | ✔ | ||||||||||
| 2017 | ✔ | ✔ | ||||||||||
| 2018 | ✔ | ✔ | ✔ | ✔ | ||||||||
| 2019 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||
| 2020 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||||
| 2021 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||
| 2022 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| 2023 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| 2024 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| 2025 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
- Each puzzle in this repo has a corresponding python script, that can be run independently of others.
- I use uv (a modern package manager for Python, which is written in Rust and very fast) to manage the dependencies.
- To run the scripts in this repo with uv, follow these steps (but you can use whatever package manager you prefer)
# Install uv if you don't have it yet
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone the repository
git clone https://github.com/miguelbper/jane-street-puzzles.git
cd jane-street-puzzles
# Install dependencies
uv sync
# Run the solution of a specific puzzle (example)
uv run 2014/2014-01-sum-of-squares.pyThis project is licensed under the MIT License - see the LICENSE file for details.
- Jane Street for the puzzles.
- In addition to the libraries mentioned above, I also use Z3 and OR-Tools a lot in this repo. These libraries are great for constraint satisfaction / optimization problems.
- Other very nice repos containing solutions to Jane Street puzzles:
