input: Write a function to generate a list of squares of numbers from 0 to n.
  assert generate_squares(10) == [0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  assert generate_squares(5) == [0, 1, 4, 9, 16, 25]
  assert generate_squares(3) == [0, 1, 4, 9]
output: def generate_squares(n):
      return [i ** 2 for i in range(n + 1)]