반응형

알고리즘/깊이 우선 탐색 (DFS) 2

[프로그래머스] 17680 : 캐시 [JAVA] Lv.2

[프로그래머스] 17680 : 캐시 [JAVA] Lv.2 1. 준비대소문자 구분하지 않으므로, 주어진값을 모두 소문자로 변경한 후 계산해야 한다. 그리고 casheSize가 0인 경우에는 하나도 저장할 수 없으니 cities 크기만큼 * 5 해주면 된다. 2. 캐시 입출력이 문제는 deque 를 사용하면 쉽게 풀 수 있다.ArrayDeque cache = new ArrayDeque();cache.contains(city) 문제 풀이 설명 (summary)Deque를 활용하여 cities 값을 하나씩 검증하여 추가한다.같다면, 카운트를 + 1 해준다. 이전의 같은 값을 삭제하고 새로 city값을 추가해준다같지 않다면, 카운트를 +5 하고 가장 먼저 추가한 값을 삭제하고, city값을 추가해준다. 만약에..

[프로그래머스] 389480 : 완전범죄 [JAVA] Lv.2

문제 풀이 설명 (summary)각 도둑 A,B 가 각각 흔적 누적 개수 이상이 되면 실패한다. A 도둑이 남긴 흔적의 누적개수의 최솟값을 리턴해야 하므로 깊이 우선 탐색을 활용하여 도달했을 때 A도둑의 누적 개수를 기록 하여, 기존값과 비교해서 작은값을 저장해서 관리초기값 그대로라면 -1 출력 문제 풀이 접근법DFS 방식 가능DP 방식 가능 풀이 코드 (Code)import java.util.ArrayDeque;public class Main { public static void main(String[] args) { int[][] info = new int[][]{{1,2},{2,3},{2,1}}; int n = 4; int m = 4; Syst..

반응형