Solve #42, 43. 43 a bit slow but nice.