dfs 2

[프로그래머스][JAVA] 87694. 아이템 줍기

💡 문제아이템 줍기 (https://school.programmers.co.kr/learn/courses/30/lessons/87694)자세한 문제 설명과 입출력 예는 링크를 참고해주세요.📝 선행 개념이 문제를 해결하려면 주로 그래프 탐색 알고리즘과 2차원 배열을 다루는 방법을 이해해야 합니다. 아래는 문제를 푸는 데 필요한 주요 개념들입니다.1. BFS (Breadth-First Search)BFS는 그래프 또는 트리의 탐색 알고리즘 중 하나로, 너비 우선 탐색이라고도 합니다. BFS는 특정 노드에서 시작하여 인접한 모든 노드를 방문한 후, 방문한 노드를 기준으로 다시 인접한 노드들을 방문하는 방식으로 진행됩니다. BFS의 주요 특징은 다음과 같습니다:최단 경로 탐색: BFS는 최단 경로 문제를 해..

[프로그래머스][JAVA] 84021. 퍼즐조각채우기

💡 문제퍼즐조각채우기(https://school.programmers.co.kr/learn/courses/30/lessons/84021)자세한 문제 설명과 입출력 예는 링크를 참고해주세요. 📝 선행 개념🤓 문제 풀이문제 설명주어진 문제는 게임 보드의 빈 공간에 테이블 위의 퍼즐 조각을 적절히 놓아서 최대한 많은 칸을 채우는 것입니다. 퍼즐 조각을 회전시킬 수는 있지만 뒤집을 수는 없습니다. 각 퍼즐 조각은 인접한 칸이 비어있으면 안 됩니다.문제 접근 방법퍼즐 조각 추출:BFS를 사용하여 테이블에서 퍼즐 조각을 추출합니다.퍼즐 조각을 추출할 때, 모든 가능한 회전을 고려하여 저장합니다.빈 공간 추출:BFS를 사용하여 게임 보드에서 빈 공간을 추출합니다.퍼즐 조각 맞추기:각 빈 공간에 대해 모든 퍼즐 ..