first 50 euler problems python