Project Euler problem sets and solutions