Sums of Squares
Implement the function
val min_sos : int -> int
so that min_sos n is the minimum number of squares required to sum
up to n.
Examples
let _ = assert (min_sos 3 = 3) (* 3 = 1^2 + 1^2 + 1^2 *) let _ = assert (min_sos 4 = 1) (* 4 = 2^2 *) let _ = assert (min_sos 5 = 2) (* 5 = 2^2 + 1^2 *)