1단계라서 Swap을 써도 풀릴줄 알았는데 아니더라군요
swap은 확실히 시간복잡도가 O(n)이 걸렷습니다.
어쩔수없이 자작으로 효율성있는 Swap을 구현해야했습니다.
그래서 Map으로 구현하려고했는데,
이게 Key: 이름 , Value: 랭크순위 로 맵을 하나 쓰고 풀다가보니,
해설자가 외친 추월한 이름을 기준으로 추월한 사람의 랭크순위는 알겠는데,
추월당한 사람을 모릅니다. 추월당한사람은 추월한 사람의 랭크순위-1인데
이걸 구하려면 Map을 한바퀴 순차탐색해야합니다. (O(N)) 발생
그래서 Key: 랭크순위, Value: 이름으로 맵을 하나 더 작성했습니다.
이러면 추월당한 사람의 이름을 랭크순위로 판단이 (O(1))로 가능해집니다.
그 후, 2개의 맵을 갱신해주면 로직 끝