Advent of Code

From the about page:

Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as interview prep, company training, university coursework, practice problems, a speed contest, or to challenge each other.

You don’t need a computer science background to participate - just a little programming knowledge and some problem solving skills will get you pretty far. Nor do you need a fancy computer; every problem has a solution that completes in at most 15 seconds on ten-year-old hardware.

You will need to sign up for an account, and then for each problem you will have you own unique input data and your own unique answer to each problem. You will find out if your code works or not by submitting your answer to the website.

Easiest problems

Slighly more challenging problems

more challenging problems