티스토리 뷰
https://programmers.co.kr/learn/courses/30/lessons/42893
코딩테스트 연습 - 매칭 점수
매칭 점수 프렌즈 대학교 조교였던 제이지는 허드렛일만 시키는 네오 학과장님의 마수에서 벗어나, 카카오에 입사하게 되었다. 평소에 관심있어하던 검색에 마침 결원이 발생하여, 검색개발팀
programmers.co.kr
문제를 보면 주어지는 입력이 엄청 길어서 보기만해도 머리가 아파오지만
문제 자체는 크게 어려운 알고리즘이나 논리가 필요한게 아닌 단순 구현 문제였다.
각 페이지 정보를 담을 구조체를 만들고,
이 구조체를 페이지 이름을 key로 갖는 unorderd_map의 value로서 정보를 하나씩 채워주면 되는데
링크점수를 계산할때 해당 페이지를 가르키고 있는 링크들이 필요한데
이 부분은 구조체 내부에 string형 벡터를 만들어서 각 페이지를 순회하면서 해당 페이지를 가르키고 있는 페이지들의 이름을 저장해줬다.
햇갈렸던 부분은 url의 이름과 링크의 이름을 찾을때의 기준이였는데
처음에는 그냥 페이지 배열에서 "content" 라는 문자열을 찾는 방식으로 했는데 이렇게 했을때 9번 테스트케이스만 틀렸다고 나왔다.
"content" 문자열을 찾는게 아닌 메타 태그 안의 "content" 문자열을 찾아야 하는것이여서
다음 문자열을 찾아서 content안의 url 이름을 찾도록 했더니 통과했다.
<meta property="og:url"
기본점수를 계산할때는 body 태그 내의 모든 문자열을 우선 소문자로 바꿔주고
소문자 알파벳이외의 모든 문자는 공백으로 바꿔주면
stringstream을 이용해 쉽게 목표 문자를 찾을수 있다.
'PS' 카테고리의 다른 글
| 프로그래머스. N-Queen (0) | 2022.01.30 |
|---|---|
| 백준 1614. 영식이의 손가락 (0) | 2022.01.30 |
| 프로그래머스. 풍선 터트리기 (0) | 2022.01.27 |
| 프로그래머스. 숫자 게임 (0) | 2022.01.27 |
| 프로그래머스. 카드 짝 맞추기 (0) | 2022.01.27 |
- Total
- Today
- Yesterday
- Spring
- recursion
- Stack
- BFS
- graph
- DP
- C
- 자료구조
- Python
- Unity
- 재귀
- Brute Force
- Implementation
- permutation
- db
- back tracking
- floyd warshall
- Dijkstra
- Kruskal
- C++
- CSS
- priority queue
- two pointer
- greedy
- dfs
- MVC
- Tree
- 이분탐색
- 조합
- binary search
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
