Medium data structure and algorithm practice puzzle.
Given a list, return every subset by counting from 0 to 2^n - 1. Each number's bits tell you which items to take: if bit i is 1, take item i. So for [1, 2], 0 gives [], 1 gives [1], 2 gives [2], and 3 gives [1, 2]. No recursion needed. The counter IS the list of subsets.
Solve it three ways: snap the jigsaw pieces together, fill in the blanks, or type it from scratch against the tests. This one is free.
Every line of the solution comes with a note explaining why it is there, and a step by step replay shows the code running. At level 3, where you type it yourself, you can ask for an AI mock interview on this problem that ends with a hiring manager's scorecard.
Then grow it into a real project with the Software Engineer button: this puzzle becomes the Trade Presence Filter, a pipeline you can run and download. See every Software Engineer project.
Browse all 576 puzzles