add solution for copy list with random pointer