01-09 04:37
Recent Posts
Recent Comments
Tags
- ํ์ด์ฌ
- ์จ์ผ๋ํ
- mysql
- Naver Cloud
- API๋ง์ผํ๋ ์ด์ค
- ์๋์ด๋ ธ
- ICT
- linux
- ํ์ด์๊ณต๋ชจ์
- ์๋ฐ
- JOBํ๊ณ
- ์คํฝ์ค๋น
- python
- SQL
- TSQL
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์คํฝ๋ ํ
- DATABASE
- DB
- RaspberryPi
- ICT๋ฉํ ๋ง
- Spring
- ํ๋ก๋ณด๋ ธ
- ํ์ด์
- API MarketPlace ๊ธ๋ก๋ฒ ์ํฌํฐ์ฆ
- ict๊ณต๋ชจ์
- Java
- ์กํ๊ณ
- appetizer
- ์ด๋ธ์
- Today
- Total
miinsun
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_63 ๋ฏธ๋ก์ ์ต๋จ ๊ฑฐ๋ฆฌ ํต๋ก(DFS) ๋ณธ๋ฌธ
Algorithm/Java
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_63 ๋ฏธ๋ก์ ์ต๋จ ๊ฑฐ๋ฆฌ ํต๋ก(DFS)
miinsun 2022. 3. 3. 19:08
๐ฌ ๋ฌธ์ ์ค๋ช
7*7 ๊ฒฉ์ํ ๋ฏธ๋ก๋ฅผ ํ์ถํ๋ ์ต๋จ๊ฒฝ๋ก์ ๊ธธ์ด๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์.
๊ฒฝ๋ก์ ๊ธธ์ด๋ ์ถ๋ฐ์ ์์ ๋์ฐฉ์ ๊น์ง ๊ฐ๋๋ฐ ์ด๋ํ ํ์๋ฅผ ์๋ฏธํ๋ค.
์ถ๋ฐ์ ์ ๊ฒฉ์์ (0, 0) ์ขํ์ด๊ณ , ํ์ถ ๋์ฐฉ์ ์ (6, 6)์ขํ์ด๋ค. ๊ฒฉ์ํ์ 1์ ๋ฒฝ์ด๊ณ , 0์ ๋๋ก์ด๋ค.
๊ฒฉ์ํ์ ์์ง์์ ์ํ์ข์ฐ๋ก๋ง ์์ง์ธ๋ค.
๋ฏธ๋ก๊ฐ ๋ค์๊ณผ ๊ฐ๋ค๋ฉด, ์๋์ ๊ฐ์ ๊ฒฝ๋ก๋ก ์ต๋จ ๊ฒฝ๋ก์ ๊ธธ์ด๋ 12์ด๋ค.
๐จ ์ ์ถ๋ ฅ ์
์ ๋ ฅ - ์ฒซ ๋ฒ์งธ ์ค๋ถํฐ 7*7 ๊ฒฉ์์ ์ ๋ณด๊ฐ ์ฃผ์ด์ง๋๋ค.
0 0 0 0 0 0 0
0 1 1 1 1 1 0
0 0 0 1 0 0 0
1 1 0 1 0 1 1
1 1 0 1 0 0 0
1 0 0 0 1 0 0
1 0 1 0 0 0 0
์ถ๋ ฅ - ์ฒซ ๋ฒ์งธ ์ค์ ์ต๋จ์ผ๋ก ์์ง์ธ ์นธ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋์ฐฉํ ์ ์์ผ๋ฉด -1๋ฅผ ์ถ๋ ฅํ๋ค.
12
๐ป Solution.java
import java.util.*;
public class Main {
static int[][] board = new int[7][7];
static int[] dx = {-1, 0, 1, 0};
static int[] dy = {0, 1, 0, -1};
static int len = 0;
static int min = Integer.MAX_VALUE;
public void DFS(int cx, int cy) {
if(cx == 6 && cy == 6) min = Math.min(min, len);
else {
for(int i = 0; i < 4; i++) {
int nx = cx + dx[i];
int ny = cy + dy[i];
//๊ฐ ์ ์๋ ๊ฒฝ๊ณ์ ์ง์
if(nx >= 0 && nx <= 6 && ny >= 0 && ny <= 6 && board[nx][ny] == 0) {
board[nx][ny] = 1;
len++;
DFS(nx, ny);
len--;
board[nx][ny] = 0;
}
}
}
}
public static void main(String[] args){
Main main = new Main();
Scanner sc = new Scanner(System.in);
for(int i = 0; i < 7; i++) {
for(int j = 0; j < 7; j++) {
board[i][j] = sc.nextInt();
}
}
board[0][0] = 1;
main.DFS(0, 0);
System.out.println(min);
sc.close();
return ;
}
}
'Algorithm > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_65 ํ ๋งํ (BFS ํ์ฉ) (0) | 2022.03.03 |
---|---|
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_64 ๋ฏธ๋ก์ ์ต๋จ ๊ฑฐ๋ฆฌ ํต๋ก (BFS) (0) | 2022.03.03 |
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_62 ๋ฏธ๋ก ํ์ (DFS) (0) | 2022.03.03 |
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_61 ์กฐํฉ ๊ตฌํ๊ธฐ (0) | 2022.03.03 |
[Algorithm]์๊ณ ๋ฆฌ์ฆ ์๋ฐ_60 ์กฐํฉ์ ๊ฒฝ์ฐ ์(๋ฉ๋ชจ์ด์ ์ด์ ) (0) | 2022.03.03 |
Comments