copy list with random pointer solution