python problem solving for beginners