Given n, how many structurally unique BSTs (binary search trees) that store values 1 to n are there? How would I come up with the solution?