programmers12 [프로그래머스] Lv.2 무인도 여행JAVA 풀이 문제 Lv.2 무인도 여행 : 지도 = 1 x 1 크기의 사각형으로 이루어진 직사각형 격자 형태 격자 구성 = X, 숫자 (1 ~ 9) - X = 바다 - 숫자 = 무인도 (상, 하, 좌, 우 붙어있는 애들은 하나의 무인도, 대각선은 다른땅) : 하나의 무인도 숫자 합 = 해당 무인도에서 최대로 머무를 수 있는 기한 (오름차순으로 출력) 무인도가 없는 경우 = -1 출력 : maps = 지도 (문자열 배열) [지도 배열 예시] [알고 가기] - 깊이 우선 탐색 - 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 - 스택 or 재귀함수 이용 - 제일 깊게 내려간 뒤 더이상 갈 수 없을 때 옆으로 이동해서 다시 깊게 내려가기를 반복 - 구현 : DFS (간단) > BFS - 검색 속도 : .. 2023. 9. 4. [프로그래머스] Lv.2 광물 캐기 JAVA 풀이 문제 Lv.2 광물 캐기(DFS) - 곡괭이로 광물을 캘 때 피로도 소모 - 캐기 시작하면 한 곡괭이로 광물 5개까지 연속 캐기 - 광물은 주어진 순서대로 캐기 - 광산에 있는 광물 모두 캐거나 사용할 곡괭이가 없을 때까지 캔다 [ 피로도 ] [ 입력 ] - 곡괭이 개수 : picks = [다이아, 철, 돌] (정수 배열) - 광물 순서: minerals (문자열 배열) [알고 가기] - 깊이 우선 탐색- 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘- 스택 or 재귀함수 이용 - 제일 깊게 내려간 뒤 더이상 갈 수 없을 때 옆으로 이동해서 다시 깊게 내려가기를 반복- 구현 : DFS (간단) > BFS - 검색 속도 : BFS > DFS (느림) .. 2023. 9. 4. 이전 1 2 다음