본문 바로가기

개발36

정올 1828번: 냉장고 [JAVA] http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=1101&sca=3050 JUNGOL www.jungol.co.kr 풀이 화학물질의 최저 보관 온도 순으로 정렬한 뒤, 가장 최저온도가 낮은 화학물질의 최고 보관 온도로 냉장고의 온도 범위를 지정한다. 새로 들어온 물질의 최고 보관 온도가 현재 지정된 최고 보관 온도보다 낮다면 그 온도로 갱신한다. 또한 냉장고의 최고 보관 온도보다 최저 보관 온도가 높은 물질이 나타나면 새로운 냉장고를 사용한다. 이렇게 모든 화학 물질을 탐색하고, 사용된 냉장고의 수를 세서 출력한다. 코드 import java.io.BufferedReader; import java.io.IOException; import java... 2023. 3. 18.
백준 1260번: DFS와 BFS [JAVA] https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 풀이 DFS는 재귀 함수를 사용한 방법과 스택을 사용한 방법이 있다. 재귀 함수 (1) 방문하지 않은 노드 출력 후 방문 처리 (2) 인접 노드를 탐색하며 방문하지 않은 노드로 진입 스택 (1) 루트 노드 push (2) pop하고 방문하지 않은 노드라면 출력 후 방문 처리 (3) 인접 노드 탐색 후 push (4) 스택이 빌 때까지 반복 BFS는 큐를 사용하.. 2023. 3. 18.
백준 2178번: 미로 탐색 [JAVA] https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 풀이 최단 경로를 찾는 문제이므로 BFS를 사용하면 된다. 1. 입력 각각의 수가 붙어서 입력으로 주어지므로 분리 시켜줘야 한다. for (int i=0; i 2023. 3. 18.
백준 1991번: 트리순회 [JAVA] https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net 풀이 우선, tree[N][3] 배열에 입력값(뿌리 알파벳, 왼쪽 자식 알파벳, 오른쪽 자식 알파벳)을 받아주었다. 각각의 순회 함수에서는 자식이 ‘.’이 아니라면, 자식의 알파벳이 뿌리 알파벳인 tree 배열을 찾아 순회를 반복한다. 자식이 하나도 없는 경우 재귀는 종료된다. 전위 순회 : 1. 뿌리 노드 출력 → 2. 왼쪽 자식 탐색 → 3. 오른쪽 자식 탐색 순으로 재귀 함수를 작.. 2023. 3. 18.