알고리즘/programmers

[Programmers 코딩테스트 고득점 Kit] 순위

꾸준함. 2021. 9. 21. 16:19

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/49191

 

코딩테스트 연습 - 순위

5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2

programmers.co.kr

BFS를 이용하는 문제였습니다.

 

알고리즘은 아래와 같습니다.

1. results 벡터를 순회하면서 각 선수를 이긴 선수들을 저장하는 벡터 winners와 각 선수한테 진 선수들을 저장하는 벡터 losers를 정의해줍니다.

2. 각 선수들에 대해 BFS를 진행해주면서 (그 선수를 이긴 선수들의 합) + (그 선수한테 진 선수들의 합) = n - 1이라면 순위가 정해진 것입니다.

3. 2번을 통해 구한 순위가 정해진 선수들의 수를 반환해줍니다.


 

개발환경:Visual Studio 2017

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형