Microsoft Daily Challenge Solutions