Tags
- BFS
- stack
- ๊ตฌํ
- ์๋ฎฌ๋ ์ด์
- Dynamic Programming
- ๋ฌธ์์ด
- ๊ทธ๋ํ ์ด๋ก
- ๋ฐฑํธ๋ํน
- SpringBoot
- Study
- Java
- ์ ๋ ฌ
- LV2
- BOJ
- ๊น์ด ์ฐ์ ํ์
- ๊ทธ๋ํ ํ์
- ๊ต์ฌ
- PGM
- ์ ์๋ก
- CodingTest
- dfs
- ์๋ฃ๊ตฌ์กฐ
- ์ํ
- greedy
- sort
- queue
- ๋๋น ์ฐ์ ํ์
- Brute Force Algorithm
- DP
- Python
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_2630 : ์์ข ์ด ๋ง๋ค๊ธฐ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- N x N ํฌ๊ธฐ์ ์ ์ฌ๊ฐํ ์ข
์ด๋ฅผ ๊ฐ์ ์์ผ๋ก๋ง ์ด๋ฃจ์ด์ง ์ ์ฌ๊ฐํ์ผ๋ก ์๋ฅผ ๋ ์ต์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค.
- ์ข ์ด๋ฅผ ์๋ฅด๋ ๋ฐฉ๋ฒ์ ํ ๋ณ์ ๊ธธ์ด๋ฅผ ์ ๋ฐ์ผ๋ก ํ๋ ์ ์ฌ๊ฐํ 4๊ฐ๋ฅผ ๋ง๋๋ ๊ฒ์ด๋ค.
- ํ ์ ์ฌ๊ฐํ ๋ฒ์๊ฐ ๋ชจ๋ ๊ฐ์ ์์ธ์ง ์ฒดํฌํ๊ณ , ๊ฐ์ง ์๋ค๋ฉด 4๋ฑ๋ถ์ผ๋ก ์๋ผ ๋ค์ ์์ ์ฒดํฌํ๋ ์ฌ๊ท ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ์ฌ๊ท ๋ฉ์๋์ ์ ๋ ฅ ๊ฐ์ ํ ๋ณ์ ๊ธธ์ด์ ์ข์๋จ์ ์ขํ์ด๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.util.Scanner;
public class Main {
private static int[][] arr;
private static int white, blue;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
arr = new int[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
arr[i][j] = sc.nextInt();
}
}
cutting(n, 0, 0);
System.out.println(white);
System.out.println(blue);
}
private static int cutting(int n, int x, int y) {
// print(n, x, y);
int pick = arr[x][y];
if (n > 1) {
for (int i = x; i < x + n; i++) {
for (int j = y; j < y + n; j++) {
if (arr[i][j] != pick) {
cutting(n / 2, x, y);
cutting(n / 2, x + n / 2, y);
cutting(n / 2, x, y + n / 2);
cutting(n / 2, x + n / 2, y + n / 2);
return 0;
}
}
}
}
if (pick == 0) white++;
else blue++;
return 0;
}
private static void print(int n, int x, int y) {
System.out.println("\n==================(" + x +", "+ y +")========================");
for (int i = x; i < x + n; i++) {
for (int j = y; j < y + n; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ํ์ ์์ข
์ด์ ํ๋ ์์ข
์ด์ ๊ฐ์ ํด๋์ค ๋ฉค๋ฒ ๋ณ์๋ก ๋๊ณ ์ ๊ท ๋ฉ์๋ cutting()์ ๋๋ ค ์นด์ดํธํ๋ค.
- ๊ฒ์ฌํ๋ ๋ฒ์์ ์์ด ๋ชจ๋ ๊ฐ์ง ์๋ค๋ฉด 4๋ฑ๋ถ์ผ๋ก ์๋ฅด๊ณ , ๊ฐ๋ค๋ฉด ๊ทธ ์์ ๊ฐ์ ์นด์ดํธํ๋ค.
- 4๋ฑ๋ถ ํ ๋, n์ 2๋ฑ๋ถํ๊ณ , ๊ทธ๋งํผ ์์ ์ขํ๊ฐ์ ์์ง์ฌ์ 4๋ฒ cutting()์ ์ ๋ ฅํด ์ฌ๊ท๋ฅผ ์ฌ์ฉํ๋ค.
๐ธ end ๐ธ
- ๋ถํ ์ ๋ณต ๋ฌธ์ ๋ผ๋๋ฐ ์ต์์น ์์ ์ ๊ทผ ๋ฐฉ๋ฒ์ด์์ง๋ง, ๋ง์ด ์ด๋ ต์ง๋ ์์๋ค.
- ์ฌ๊ท ๋ฉ์๋ ์ฌ์ฉ์ด ์๊ฐ๋ณด๋ค ์ฐ์ต์ด ๋ ๋ ๊ฒ ๊ฐ์์ ์ฌ๊ท ๋ฌธ์ ๋ฅผ ํ์ด๋ณผ๊น ํ๋ค.
- ๋ฌธ์ ์ ๊ทผ, ํ์ด๊ณํ ๋ฉ๋ชจ๋ฅผ ์์ฑํ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_2312 : ์ ๋ณต์ํ๊ธฐ (0) | 2023.02.10 |
---|---|
BOJ_7507 : ์ฌ๋ฆผํฝ ๊ฒ์ (0) | 2023.02.07 |
BOJ_7569 : ํ ๋งํ (0) | 2023.02.03 |
BOJ_7576 : ํ ๋งํ (0) | 2023.01.30 |
BOJ_11478 : ์๋ก ๋ค๋ฅธ ๋ถ๋ถ ๋ฌธ์์ด์ ๊ฐ์ (0) | 2023.01.30 |