문제 링크(Link)
https://www.acmicpc.net/problem/1103
문제 해결(Solution)
1. DP를 이용해서 문제 해결한다.
2. 사이클이 존재 여부를 확인하는 bool 배열을 만들어서 확인한다.
주의할 점 || 생각해볼 점(Caution || Consideration)
1. main함수 외에서 프로그램을 강제 종료할 수 있는 exit 함수를 사용. exit의 매개 인자에 0이면 정상 종료, 그 외의 값은 비정상 종료임을 알린다.
2. 사이클의 존재 여부를 확인하는 쉬운 방법.
① 처음 vertex에 방문했을 때, 방문했음을 체크(chk[row][col]=true)한다.
② 상하좌우 이동한다. (이 행위는 다른 문제에선 다르게 응용될 수 있다)
③ 언체크(chk[row][col]=false)한다. 만약 언체크 이전에 다시 방문된다면, 사이클이 존재하는 것이다.
참고(Reference)
- exit 함수에 대한 설명 : https://kldp.org/node/47649
※ 정확하고 부드러운 태클은 언제나 환영입니다.
'Problem Solving > DP' 카테고리의 다른 글
BOJ 12841 - 정보대 등산 (0) | 2018.01.15 |
---|---|
BOJ 1949 - 우수 마을 (0) | 2017.12.21 |
BOJ 12849 - 본대 산책 (0) | 2017.10.07 |
BOJ 5721 - 사탕 줍기 대회 (0) | 2017.09.30 |
BOJ 11578 - 팀원 모집 (0) | 2017.09.30 |