https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRQm6qfL0DFAUo&categoryId=AWXRQm6qfL0DFAUo&categoryType=CODE&&&
어려운 문제는 아니다. 방향은 잡았는데, 코드로 구현하는데 오래 걸렸다.
풀이
- 구슬 선택 : DFS
- 벽돌 깨기 : 재귀
DFS는 다음 그림과 같이 진행한다. 구슬을 쏠 수 있는 칼럼은 0, 1, 2, 3 으로 4개가 있다고 하면,
재귀는 다음 그림과 같이 구현한다. 3을 기준으로 벽돌을 깬다고 하면,
3 기준 동서남북을 체크한다. 3의 동쪽을 깨는 중에, 9가 나오기 때문에, 9 위치에서 다시 재귀 함수를 호출 한다.