[25.03.06] algo 백준 20914 리뷰

25.03.06(Thu) 알고리즘 스터디 리뷰

문제 요약

QWERTY 자판

어려웠던 부분

생각해야 할 부분들이 많았던 문제였다고 생각한다.
키보드 배열 고민
키보드 배열의 크기가 고정되어 있지만 균일하게 같은 크기의 배열은 아니다 보니 키보드 배열을 어떻게 구성할지를 고민하는 시간이 오래 걸렸다. 실제로 vector, 이중배열등의 방식들을 고민했는데 이중배열을 활용하되 빈 공간은 비워두는 방식으로 구현했다.
bfs 구현시에 다음 노드 찾는 방식
bfs를 구현할때 다음 노드를 찾는 방식에 대해서 고민이 되었다. 좌우 버튼의 경우에는 범위를 넘어가는 경우가 생기기도 하고 배열의 크기가 10, 9, 7로 다르다 보니 이부분을 예외로 처리해야 한다고 생각했다. 그래서 예외처리에 오류가 생기는 부분들을 찾는게 굉장히 오래 걸린 부분이였다. 그런데 풀이 이후에 다른 풀이를 확인했을때 배열의 넓이를 넘어가는 부분만 예외처리를 하는 방식으로 풀이해도 문제가 없다는 것을 알 수 있었다…

결과 코드

BOJ20914