[DFS 알고리즘] 빙산 (정올)
게임 만들랴 자소서쓰랴 정신 없는 7월이 지나가고
한 달만에 풀어보는 알고리즘..
이번에는 정답률 20%대의 DFS 알고리즘을 풀어보았습니다.
정답률이 낮은 문제의 특징은 정말 어렵거나.. 아니면 함정이 많은 문제인데
이 문제는 어려운 문제라기 보다는 함정이 많은 문제가 되겠습니다.
DFS 알고리즘 문제 - 빙산 (정올)
01. 변수 선언 및 초기화
02. 재귀 함수
03. 1년 후 빙산의 변화 예측 함수
함정 1 : 빙산의 모습을 1년 후로 바꿀 때, 녹아 없어질 빙하라도 바로 0으로 바꾸어준다면 인접한 빙하에 영향을 주게 됩니다.
그래서 저는 -9999라는 숫자로 일단 바꾸어주고, 모든 빙하를 다 둘러본 뒤 -9999의 값을 0으로 다시 바꾸어 주었습니다.
04. 메인
함정 2 : 빙하가 아예 없어질 때까지 반복문을 돌려야 합니다.
따라서 while문을 돌려주고 두 동강 났다면 답 출력하고 리턴
더 이상 체크할 빙하가 없다면 반복문 종료. 그리고 0 출력
20%대 문제 치고는 살짝 쉬운 감이 있지만, 문제를 꼼꼼히 읽지 않았다면 또 한참 헤맸을 법한 문제였습니다.
'알고리즘' 카테고리의 다른 글
[알고리즘][BFS] 탈출 (백준) (1) | 2017.08.08 |
---|---|
[알고리즘][동적 계획법] 이동하기(백준) (0) | 2017.08.06 |
[알고리즘][DFS] 안전 영역(백준) (0) | 2017.06.27 |
[알고리즘][동적 계획법] 다리 놓기(백준) (0) | 2017.06.27 |
[알고리즘][동적 계획법] 2xn 타일링 (백준) (0) | 2017.06.27 |