백준 15683 감시 Java
2019. 9. 19.
삼성 SW 역량테스트 기출문제이다. CCTV의 종류는 5가지이고 회전이 가능하다. 따라서 0 -> 동, 1 -> 서, 2 -> 남, 3 -> 북 이라고 할 때 1번은 1, 2, 3, 4 = 4가지 2번은 01, 23 = 2가지 3번은 02, 03, 12, 13 = 4가지 4번은 012, 013, 023, 123 = 4가지 5번은 0123 = 1가지이다. DFS로 1~5까지 수를 만났을 때 수에 맞는 각각의 경우를 감시할 수 있는 범위를 배열에 표시해준 다음에 DFS를 다음 수로 재귀 호출하고 돌아와서 표시해준 수를 다시 0으로 만들어 주는 백트래킹 방식으로 해결하였다. 이렇게 하면 DFS를 타고 타고 모든 경우의 CCTV 범위의 사각지대의 수를 찾을 수 있다. monitor라는 메소드를 만들어서 현재 위..