01-08 08:57
Recent Posts
Recent Comments
Tags
- νμ΄μ
- μ΄λΈμ
- νμ΄μ곡λͺ¨μ
- μ‘νκ³
- νμ΄μ¬
- DB
- μ€ν½λ ν
- TSQL
- Java
- νλ‘λ³΄λ Έ
- appetizer
- API MarketPlace κΈλ‘λ² μν¬ν°μ¦
- μ€ν½μ€λΉ
- ICTλ©ν λ§
- ICT
- RaspberryPi
- DATABASE
- λ°μ΄ν°λ² μ΄μ€
- Naver Cloud
- SQL
- APIλ§μΌνλ μ΄μ€
- μλ°
- μλμ΄λ Έ
- python
- JOBνκ³
- linux
- Spring
- μ¨μΌλν
- mysql
- ict곡λͺ¨μ
- Today
- Total
miinsun
[Algorithm]μκ³ λ¦¬μ¦ μλ°_66 μ¬λλΌ μμΌλλ λ³Έλ¬Έ
π¬ λ¬Έμ μ€λͺ
N*Nμ μ¬λλΌ μμΌλλμ μ§λκ° κ²©μνμ μ λ³΄λ‘ μ£Όμ΄μ§λλ€.
κ° μ¬μ 1λ‘ νμλμ΄ μνμ’μ°μ λκ°μ μΌλ‘ μ°κ²°λμ΄ μμΌλ©°, 0μ λ°λ€μ λλ€.
μ¬λλΌ μμΌλλμ λͺ κ°μ μ¬μ΄ μλμ§ κ΅¬νλ νλ‘κ·Έλ¨μ μμ±νμΈμ.
λ§μ½ μλμ κ°λ€λ©΄ μ¬μ κ°μλ 5κ°μ λλ€.
π¨ μ μΆλ ₯ μ
- μ λ ₯
- 첫 λ²μ§Έ μ€μ μμ°μ N(3<=N<=20)μ΄ μ£Όμ΄μ§λλ€.
- λ λ²μ§Έ μ€λΆν° 격μν μ λ³΄κ° μ£Όμ΄μ§λ€.
7
1 1 0 0 0 1 0
0 1 1 0 1 1 0
0 1 0 0 0 0 0
0 0 0 1 0 1 1
1 1 0 1 1 0 0
1 0 0 0 1 0 0
1 0 1 0 1 0 0
- μΆλ ₯
- 첫 λ²μ§Έ μ€μ μ¬μ κ°μλ₯Ό μΆλ ₯νλ€.
5
π» Solution.java
import java.util.*;
public class Main {
static int answer = 0, n;
// μ λ€ μμ, λκ°μ μ μ’ν μ 보
static int[] dx = {-1, -1, 0, 1, 1, 1, 0, -1};
static int[] dy = {0, 1, 1, 1, 0, -1, -1, -1};
// x, y μ’νλ₯Ό μ€μ¬μΌλ‘ DFS μμ
public void DFS(int x, int y, int[][] board) {
for(int i = 0; i < 8; i++) {
int nx = x + dx[i];
int ny = y + dy[i];
// κ²½κ³μ κ²μ¬ & λ
(1)μΈ κ° μ°ΎκΈ°
if(nx >= 0 && ny >= 0 && nx < n && ny < n && board[nx][ny] == 1) {
board[nx][ny] = 0; //μ΄λ―Έ κ²μ¬ν λ
μ 0μΌλ‘ λ°κΏμ€
DFS(nx, ny, board);
}
}
}
public void solution(int[][] board) {
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++) {
if(board[i][j] == 1) { // λ
μΈ μ§μ μ μ€μ¬μΌλ‘ DFS μμ
answer++; // λ§€λ² DFSκ° μμ λ λλ§λ€ μλ‘μ΄ μ¬
board[i][j] = 0;
DFS(i, j, board);
}
}
}
}
public static void main(String[] args){
Main main = new Main();
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
int [][] board = new int [n][n];
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++) {
board[i][j] = sc.nextInt();
}
}
main.solution(board);
System.out.println(answer);
sc.close();
return ;
}
}
'Algorithm > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Algorithm]μκ³ λ¦¬μ¦ μλ°_68 νμμ€ λ°°μ (0) | 2022.03.08 |
---|---|
[Algorithm]μκ³ λ¦¬μ¦ μλ°_67 μ¨λ¦ μ μ (0) | 2022.03.08 |
[Algorithm]μκ³ λ¦¬μ¦ μλ°_65 ν λ§ν (BFS νμ©) (0) | 2022.03.03 |
[Algorithm]μκ³ λ¦¬μ¦ μλ°_64 λ―Έλ‘μ μ΅λ¨ 거리 ν΅λ‘ (BFS) (0) | 2022.03.03 |
[Algorithm]μκ³ λ¦¬μ¦ μλ°_63 λ―Έλ‘μ μ΅λ¨ 거리 ν΅λ‘(DFS) (0) | 2022.03.03 |
Comments