목록boj (35)
All :L

농장 관리 (1245)1. 문제 분석문제 개요농장의 높이 정보가 주어졌을 때, 각 높이를 기준으로 주변을 탐색하여 봉우리를 찾는 문제이다. 봉우리란, 해당 지역보다 주변 모든 높이가 낮아야 하며, 같은 높이인 경우 연속된 지역도 포함된다. 이 문제는 DFS(깊이 우선 탐색)를 이용하여 해결할 수 있다.입력 형식첫 줄에 농장의 크기를 나타내는 N(행)과 M(열)이 주어진다.다음 N개의 줄에는 M개의 농장의 높이 정보가 주어진다.출력 형식봉우리의 개수를 출력한다.2. 알고리즘 종류DFS (깊이 우선 탐색)DFS를 사용하여 각 높이의 지역을 탐색하고, 그 지역이 봉우리인지를 판단하여 봉우리의 개수를 센다.3. 주요 부분 및 코드 작성 방법1. 농장 및 방문 배열 초기화입력된 농장 높이 정보를 저장하고, 방문 ..

양 한마리... 양 두마리... (11123)1. 문제 분석문제 개요주어진 격자(grid)에서 양('#')들이 서로 연결된 덩어리의 개수를 구하는 문제이다. 양의 덩어리는 4방향(상하좌우)으로 연결된 양들을 의미한다. DFS(깊이 우선 탐색)를 사용하여 각 양의 덩어리를 탐색하고, 그 개수를 세는 것이 목표이다.입력 형식첫 번째 줄에 테스트 케이스의 개수 T가 주어진다.각 테스트 케이스에 대해 첫 줄에는 격자의 높이 H와 너비 W가 주어진다.이후 H줄에 걸쳐 각 줄에는 W개의 문자가 주어지며, 양은 '#'로, 빈 칸은 '.'으로 표시된다.출력 형식각 테스트 케이스에 대해 양의 덩어리 개수를 출력한다.2. 알고리즘 종류DFS (깊이 우선 탐색)DFS를 사용하여 각 양의 덩어리를 탐색한다. 방문한 양은 vi..

치즈 (2638)1. 문제 분석문제 개요N x M 크기의 종이에서 치즈가 놓여있으며, 치즈는 1로 표시된다. 치즈의 가장자리는 공기와 접촉할 때 녹게 되며, 두 면 이상이 공기와 접촉한 치즈는 한 번의 과정에서 모두 녹는다. 치즈가 모두 녹을 때까지의 시간을 계산하는 문제이다.입력 형식첫 줄에는 종이의 크기 N (세로)과 M (가로)가 주어진다.그다음 N개의 줄에 걸쳐서 각 칸에 치즈가 있는지 없는지에 대한 정보가 주어진다. 0은 공기, 1은 치즈를 나타낸다.출력 형식치즈가 모두 녹는 데 걸리는 시간을 출력한다.2. 알고리즘 종류이 문제는 DFS(깊이 우선 탐색)와 시뮬레이션을 사용하는 문제이다. DFS를 사용해 치즈의 외부 공기를 탐색하고, 시뮬레이션을 통해 치즈가 녹는 과정을 반복적으로 수행해 해결한..

섬의 개수 (4963)1. 문제 분석문제 개요:2차원 배열로 주어진 지도에서 섬의 개수를 세는 문제이다. 지도의 각 칸은 바다(0) 또는 땅(1)으로 표시된다. 인접한 땅(상하좌우, 대각선 방향)이 연결되어 하나의 섬을 형성하며, 지도에 존재하는 섬의 총 개수를 구해야 한다.입력 형식첫 줄에는 지도의 너비 w와 높이 h가 주어진다.다음 h개의 줄에 걸쳐서 지도의 정보가 주어진다. 지도의 정보는 0과 1로 이루어진 숫자가 공백으로 구분된다.입력의 마지막 줄에서 w와 h가 둘 다 0이면 입력이 종료된다.출력 형식각 테스트 케이스에 대해 섬의 개수를 출력한다.2. 알고리즘 종류이 문제는 DFS(깊이 우선 탐색) 알고리즘을 사용하는 문제이다. 해당 문제는 2차원 배열을 순회하면서 연결된 모든 섬의 부분을 탐색하..

음식물 피하기 (1713)1. 문제 분석문제 개요N x M 크기의 격자판에 K개의 음식물 쓰레기가 흩어져 있습니다.각 음식물 쓰레기는 인접한 칸(상, 하, 좌, 우)으로 연결될 수 있으며, 연결된 음식물 쓰레기 덩어리 중 가장 큰 크기를 구하는 문제입니다.입력 형식첫 번째 줄에 격자의 크기 N, M과 음식물 쓰레기의 수 K가 주어집니다.이후 K개의 줄에 음식물 쓰레기가 위치한 좌표 (r, c)가 주어집니다.출력 형식연결된 음식물 쓰레기 중 가장 큰 덩어리의 크기를 출력합니다.2. 알고리즘 종류이 문제는 BFS(너비 우선 탐색) 알고리즘을 사용하여 연결된 음식물 쓰레기의 크기를 구하는 문제입니다. BFS를 통해 각 쓰레기 덩어리의 크기를 구하고, 그중 최대 크기를 찾는 방식으로 해결합니다.3. 주요 부분 ..

듣보잡 (1764)1. 문제 분석문제 개요듣도 못한 사람과 보도 못한 사람의 목록이 주어졌을 때, 두 목록에 모두 속하는 사람들을 찾아 사전순으로 출력하는 문제이다.입력 형식첫 줄에 듣도 못한 사람의 수 N과 보도 못한 사람의 수 M이 주어진다.다음 N개의 줄에 듣도 못한 사람의 이름이 주어지고, 이후 M개의 줄에 보도 못한 사람의 이름이 주어진다.출력 형식듣도 보도 못한 사람의 수와 그들의 이름을 사전순으로 출력한다.2. 알고리즘 종류이 문제를 해결하기 위해 사용할 수 있는 알고리즘은 다음과 같다:해시맵(HashMap): 해시맵을 사용하여 각 이름이 몇 번 등장했는지를 효율적으로 기록하고, 이를 통해 중복된 이름을 쉽게 찾을 수 있다.정렬 알고리즘(Sorting): 최종적으로 중복된 이름들을 사전순으로..