add explanation for Problem 3