From cbe4bc479c9a36c924a2fd0c4910a8980937f926 Mon Sep 17 00:00:00 2001 From: sh0723 Date: Mon, 25 May 2026 16:25:36 +0900 Subject: [PATCH] =?UTF-8?q?2583=20:=20=EC=98=81=EC=97=AD=20=EA=B5=AC?= =?UTF-8?q?=ED=95=98=EA=B8=B0=20solve?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/week2/BOJ2583/BOJ2583_V1.cpp | 69 ++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 src/week2/BOJ2583/BOJ2583_V1.cpp diff --git a/src/week2/BOJ2583/BOJ2583_V1.cpp b/src/week2/BOJ2583/BOJ2583_V1.cpp new file mode 100644 index 0000000..70d6221 --- /dev/null +++ b/src/week2/BOJ2583/BOJ2583_V1.cpp @@ -0,0 +1,69 @@ +#include +using namespace std; +int M, N, K; +vector> inp_map; +vector> visited; +int dy[4] = {-1, 0, 1, 0}; +int dx[4] = {0, 1, 0, -1}; +vector result; +int dfs(int y, int x, int size) { + visited[y][x] = 1; + + for (int i = 0; i < 4; i++) { + int ny = y + dy[i]; + int nx = x + dx[i]; + + if (ny < 0 || nx < 0 || ny >= M || nx >= N || visited[ny][nx] || !inp_map[ny][nx]) + continue; + + size = dfs(ny, nx, size+1); + } + + return size; +} +int main() { + + ios_base::sync_with_stdio(false); + cin.tie(NULL); + cout.tie(NULL); + + cin >> M >> N >> K; + + for (int i = 0; i < M; i++) { + inp_map.push_back(vector(N, 0)); + visited.push_back(vector(N, 0)); + for (int j = 0; j < N; j++) { + inp_map[i][j] = 1; + visited[i][j] = 0; + } + } + + for (int i = 0; i < K; i++) { + int sty, stx; + int edy, edx; + cin >> stx >> sty >> edx >> edy; + for (int j=0; j