c# problem solving exercises columbia sat essay requirements