알고리즘/programmers

[Programmers] 매칭 점수

꾸준함. 2022. 8. 15. 00:56

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문자열 파싱 문제였습니다.

 

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

1. 인덱스, 기본 점수, 본인 링크를 외부 링크로 갖는 인덱스들을 모아놓은 벡터, 그리고 링크를 변수로 갖는 WebPage 구조체를 선언해주고 각 page와 1:1 관계의 WebPage형 벡터를 선언해줍니다.

2. 우선 pages를 순회하며 각각의 링크를 구한 뒤 해당 링크가 몇 번째 인덱스에 매핑되는지 content2idx에 표시해줍니다.

3. pages를 순회하며 각 페이지의 기본 점수와 외부 링크를 구해준 뒤 1번에서 선언한 벡터에 저장해줍니다.

3.1 contenet2idx 맵을 통해 외부 링크에 속하는 page를 찾은 뒤 해당 page의 linkToMes 벡터에 현재 페이지 인덱스를 추가해줍니다.

4. pair<double, int>형 벡터를 선언해준 뒤 모든 { page의 총합 점수, page의 인덱스 }를 넣어줍니다.

5. 문제의 조건에 맞게 4번에서 선언한 벡터를 정렬한 뒤 제일 우선순위가 높은 page의 인덱스를 반환해줍니다.

 

 

개발환경: Programmers IDE

 

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

반응형