From d4e1119e6799bdd1bed95f340a972b30b98f5306 Mon Sep 17 00:00:00 2001 From: yudility Date: Mon, 8 Sep 2025 15:52:39 +0900 Subject: [PATCH] =?UTF-8?q?=ED=8C=8C=EC=9D=B4=ED=94=84=EC=98=AE=EA=B8=B0?= =?UTF-8?q?=EA=B8=B01=20/=20=EA=B3=A8=EB=93=9C5=20/=2045=EB=B6=84=20/=20O?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- baekjoon-algorithm-study.iml | 1 + ...\353\260\225\354\234\240\354\247\204.java" | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 "re05/BOJ_17070/\355\214\214\354\235\264\355\224\204\354\230\256\352\270\260\352\270\2601_\353\260\225\354\234\240\354\247\204.java" diff --git a/baekjoon-algorithm-study.iml b/baekjoon-algorithm-study.iml index e0bf682..6334790 100644 --- a/baekjoon-algorithm-study.iml +++ b/baekjoon-algorithm-study.iml @@ -30,6 +30,7 @@ + diff --git "a/re05/BOJ_17070/\355\214\214\354\235\264\355\224\204\354\230\256\352\270\260\352\270\2601_\353\260\225\354\234\240\354\247\204.java" "b/re05/BOJ_17070/\355\214\214\354\235\264\355\224\204\354\230\256\352\270\260\352\270\2601_\353\260\225\354\234\240\354\247\204.java" new file mode 100644 index 0000000..35a3fe8 --- /dev/null +++ "b/re05/BOJ_17070/\355\214\214\354\235\264\355\224\204\354\230\256\352\270\260\352\270\2601_\353\260\225\354\234\240\354\247\204.java" @@ -0,0 +1,51 @@ +package BOJ_17070; + +import java.util.*; +import java.io.*; + +public class 파이프옮기기1_박유진 +{ + static int n; + static int[][] map = new int[20][20]; + static int[] dy = {0, 1, 1}; + static int[] dx = {1, 0, 1}; + static int count = 0; + + static void dfs(int y, int x, int dir){ + + if(y == n-1 && x == n-1 ){ + count++; + return; + } + + for(int d = 0; d < 3 ; d++){ + int ny = y + dy[d]; + int nx = x + dx[d]; + + if( ny < 0 || nx < 0 || ny >= n || nx >= n ) continue; // 범위 밖 불가 + if( map[ny][nx] == 1 ) continue; // 벽 이동 불가 + if( (dir == 0 && d == 1) || (dir == 1 && d == 0)) continue; // 가로 -> 세로 이동 불가, 세로 -> 가로 이동 불가 + if( d == 2 && ( map[ny-1][nx] == 1 || map[ny][nx - 1] == 1 )) continue;//대각선일 때 회전할 공간이 벽이면 긁으므로 불가 + + dfs(ny, nx, d); + } + } + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st; + + n = Integer.parseInt(br.readLine()); + + for(int i = 0; i