해당 문제는 hash 자료구조를 이용해서 문제를 풀 수 있다.
먼저, players의 name을 key, 해당 index를 value로 초기화 해준다.
다음으로 callings에 대한 반복문을 돌리는데,
초기화 해주었던 hash에 callings에 대한 요소(이름)로 key에 접근해서 value를 currIdx에 담아준다.
그럼 해당 이름의 index를 받아오고, 이름이 불린 앞 사람과 위치를 바꿔야 한다.
앞 사람의 이름을 front라는 변수에 currIdx -1 값을 통해 담아둔다.
그리고 서로의 index 값을 바꿔주고,
hash에 바뀐 index로 서로 바꿔주면서 반복문을 끝까지 돈다.
이렇게 반복문 안에 indexOf를 돌렸을 때는 O(N^2)이지만 hash를 이용해서 O(N)으로 해결해준다.