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