Programming puzzles and algorithm solution