(Java) 프로그래머스 거리두기 확인하기
·
코딩 테스트
문제를 읽고 전형적인 DFS / BFS 문제라고 생각했다. 다만 DFS / BFS를 구현하는 부분이 조금 막혔다. 그래서 모든 경우의 수를 나누어 먼저 풀어보았고 BFS를 이용해서 다시 풀어 보았다. 모든 경우의 수를 나눈 방법은 BFS를 이용했을 때보다 시간이 훨씬 적게 걸렸다. 다만 코드의 길이가 좀 길고 거리가 2인 확인과 대각선 확인의 로직이 복잡해 장단점이 있는 것 같다. 최종 코드 (모든 경우) class Solution { public int[] solution(String[][] places) { int[] answer = new int[5]; for (int i = 0; i < places.length; i++) { String[] temp = places[i]; boolean check..