그래프4 [리트코드] Medium 322. Coin Change - 자바(JAVA) 문제 설명당신에게는 서로 다른 금액 단위를 나타내는 정수 배열 coins와, 총금액을 나타내는 정수 amount가 주어집니다. amount를 만들기 위해 필요한 가장 적은 수의 동전 개수를 반환하세요. 만약 동전의 조합으로 해당 금액을 만들 수 없다면 -1을 반환하세요. 각 동전은 무한히 많이 가지고 있다고 가정할 수 있습니다. 제한사항1 1 0 문제 파악주어진 동전 종류를 사용해 특정 금액을 만들 때, 필요한 최소 동전 개수를 구하는 문제이다. 접근 방법bfs를 사용한다.노드는 현재까지 만든 금액을 의미한다.큐에 현재까지 만든 금액을 넣는다.큐에 있는 값(현재 금액)에 동전을 합해서 다음 노드(새로운 금액)를 만든다.이 노드를 전에 방문하지 않았다면 큐에 넣는다.amount(목표 금액)에 해당하는 금액.. 2025. 4. 29. [프로그래머스] Lv3. 가장 먼 노드 - 자바(JAVA) 문제 설명n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 개수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 노드로부터 가장 멀리 떨어진 노드가 몇 개인지를 return 하도록 solution 함수를 작성해 주세요. 제한사항노드의 개수 n은 2 이상 20,000 이하입니다. vertex 배열 각 행 [a, b]는 a번 노드와 b번 노드 사이에 간선이 있다는 의미입니다.간선은 양방향이며 총 1개 이상 50,000개 이하의 간선이 있습니다.문제 파악주어진 그래프에서 1.. 2025. 4. 29. [리트코드] Medium 841. Keys and Rooms - 자바(JAVA) 문제 설명n개의 방이 0번부터 n-1번까지 번호가 매겨져 있으며, 0번 방을 제외한 모든 방은 잠겨 있습니다. 당신의 목표는 모든 방을 방문하는 것입니다. 하지만, 열쇠 없이는 잠긴 방에 들어갈 수 없습니다. 방을 방문하면, 그 안에서 여러 개의 서로 다른 열쇠를 찾을 수 있습니다. 각 열쇠에는 해당 열쇠로 열 수 있는 방의 번호가 적혀 있으며, 이 열쇠들은 모두 가져갈 수 있습니다. rooms라는 배열이 주어지고, rooms[i]는 i번 방을 방문했을 때 얻을 수 있는 열쇠들의 집합을 나타냅니다. 모든 방을 방문할 수 있다면 true를, 그렇지 않다면 false를 반환하세요. 제한사항n == rooms.length2 0 1 0 rooms[i]에 있는 값들은 모두 유일합니다.문제 파악0번 방에서 시작한.. 2025. 4. 28. [프로그래머스] Lv3. 네트워크 - 자바(JAVA) 문제 설명네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어 있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크의 개수를 return 하도록 solution 함수를 작성하시오. 제한사항컴퓨터의 개수 n은 1 이상 200 이하인 자연수입니다.각 컴퓨터는 0부터 n-1인 정수로 표현합니다.i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computers[i][.. 2025. 4. 28. 이전 1 다음