Hard data structure and algorithm practice puzzle.
Given daily stock prices, return each day's span: how many days in a row, ending today, the price was less than or equal to today's. Keep a stack of earlier days that were higher. For each day, pop every day on the stack that's not higher than today. The span is the gap back to whatever day is left on top, or all the days so far if the stack is empty.
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 Expression Evaluator, a pipeline you can run and download. See every Software Engineer project.
Browse all 576 puzzles