01-09 04:37
Recent Posts
Recent Comments
Tags
- DB
- Spring
- ์ด๋ธ์
- ํ์ด์๊ณต๋ชจ์
- ์คํฝ๋ ํ
- ํ๋ก๋ณด๋ ธ
- appetizer
- ์๋์ด๋ ธ
- ์คํฝ์ค๋น
- TSQL
- Java
- linux
- ์จ์ผ๋ํ
- mysql
- ICT๋ฉํ ๋ง
- API๋ง์ผํ๋ ์ด์ค
- Naver Cloud
- JOBํ๊ณ
- python
- SQL
- RaspberryPi
- API MarketPlace ๊ธ๋ก๋ฒ ์ํฌํฐ์ฆ
- ict๊ณต๋ชจ์
- ์๋ฐ
- DATABASE
- ํ์ด์ฌ
- ํ์ด์
- ICT
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์กํ๊ณ
- Today
- Total
miinsun
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 2447 :: ๋ณ ์ฐ๊ธฐ - 10 ๋ณธ๋ฌธ
Algorithm/Baekjoon
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 2447 :: ๋ณ ์ฐ๊ธฐ - 10
miinsun 2022. 4. 10. 21:24
๐ฌ ๋ฌธ์ ์ค๋ช
์ฌ๊ท์ ์ธ ํจํด์ผ๋ก ๋ณ์ ์ฐ์ด ๋ณด์. N์ด 3์ ๊ฑฐ๋ญ์ ๊ณฑ(3, 9, 27, ...)์ด๋ผ๊ณ ํ ๋, ํฌ๊ธฐ N์ ํจํด์ N×N ์ ์ฌ๊ฐํ ๋ชจ์์ด๋ค.
ํฌ๊ธฐ 3์ ํจํด์ ๊ฐ์ด๋ฐ์ ๊ณต๋ฐฑ์ด ์๊ณ , ๊ฐ์ด๋ฐ๋ฅผ ์ ์ธํ ๋ชจ๋ ์นธ์ ๋ณ์ด ํ๋์ฉ ์๋ ํจํด์ด๋ค.
N์ด 3๋ณด๋ค ํด ๊ฒฝ์ฐ, ํฌ๊ธฐ N์ ํจํด์ ๊ณต๋ฐฑ์ผ๋ก ์ฑ์์ง ๊ฐ์ด๋ฐ์ (N/3)×(N/3) ์ ์ฌ๊ฐํ์ ํฌ๊ธฐ N/3์ ํจํด์ผ๋ก ๋๋ฌ์ผ ํํ์ด๋ค. ์๋ฅผ ๋ค์ด ํฌ๊ธฐ 27์ ํจํด์ ์์ ์ถ๋ ฅ 1๊ณผ ๊ฐ๋ค.
๐จ ์ ์ถ๋ ฅ ์
์ ๋ ฅ
- ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. N์ 3์ ๊ฑฐ๋ญ์ ๊ณฑ์ด๋ค.
- ์ฆ ์ด๋ค ์ ์ k์ ๋ํด N=3k์ด๋ฉฐ, ์ด๋ 1 ≤ k < 8์ด๋ค.
์ถ๋ ฅ
- ์ฒซ์งธ ์ค๋ถํฐ N๋ฒ์งธ ์ค๊น์ง ๋ณ์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1)
27
์์ ์ถ๋ ฅ 1)
***************************
* ** ** ** ** ** ** ** ** *
***************************
*** ****** ****** ***
* * * ** * * ** * * *
*** ****** ****** ***
***************************
* ** ** ** ** ** ** ** ** *
***************************
********* *********
* ** ** * * ** ** *
********* *********
*** *** *** ***
* * * * * * * *
*** *** *** ***
********* *********
* ** ** * * ** ** *
********* *********
***************************
* ** ** ** ** ** ** ** ** *
***************************
*** ****** ****** ***
* * * ** * * ** * * *
*** ****** ****** ***
***************************
* ** ** ** ** ** ** ** ** *
***************************
โ
โ
๐ป Main.java
- ์๊ฐ ๋จ์ถ์ ์ํด BufferedReader์ StringBuilder๋ฅผ ์ ์ถ๋ ฅ์ ์ด์ฉํ๋ค.
- 9๊ฐ์ ์์ญ์ผ๋ก ๋๋ ์ ํํฐ์
๊ฒ์ฌ๋ฅผ ์งํ
- ๋งจ์ ์ผ์ชฝ (i, j)
- ๋งจ์ ๊ฐ์ด๋ฐ (i + n / 3, j)
- ๋งจ์ ์ค๋ฅธ์ชฝ (i + (2 * n / 3), j)
- ๊ฐ์ด๋ฐ ์ผ์ชฝ (i, j + n /3)
- ๊ฐ์ด๋ฐ ๊ฐ์ด๋ฐ (i + n / 3, j + n / 3)
- ๊ฐ์ด๋ฐ ์ค๋ฅธ์ชฝ(i + (2 * n / 3), j + n / 3)
- ์๋ ์ผ์ชฝ (i, j + (2 * n / 3))
- ์๋ ๊ฐ์ด๋ฐ (i + n / 3, j + (2 * n / 3))
- ์๋ ์ค๋ฅธ์ชฝ(i + (2 * n / 3), j + (2 * n / 3)
- ์ด๋ ๊ฐ์ด๋ฐ์ ๊ฐ์ด๋ฐ๋ ๊ณต๋ฐฑ์ผ๋ก ์ฑ์์ค๋ค.
- ์ฌ์ด์ฆ๊ฐ 3์ด๋๋ฉด, ๊ธฐ๋ณธ ํจํด์ผ๋ก ์ฑ์์ค๋ค.
/* ๋ฐฑ์ค ๋ถํ ์ ๋ณต - 2447 :: ๋ณ ์ฐ๊ธฐ - 10 */
import java.io.*;
public class Main {
static char[][] board;
public static void fillBlank(int x, int y, int size) {
for(int i = x; i < x + size; i++) {
for(int j = y; j < y + size; j++) {
board[i][j] = ' ';
}
}
}
public static void makeStar(int i, int j, int size) {
if(size == 3) {
board[i][j] = '*';
board[i+1][j] = '*';
board[i+2][j] = '*';
board[i][j+1] = '*';
board[i+1][j+1] = ' ';
board[i+2][j+1] = '*';
board[i][j+2] = '*';
board[i+1][j+2] = '*';
board[i+2][j+2] = '*';
return;
}
int newSize = size / 3;
// ์ผ์ชฝ ์
makeStar(i, j, newSize);
// ๊ฐ์ด๋ฐ ์
makeStar(i + newSize, j, newSize);
// ์ค๋ฅธ์ชฝ ์
makeStar(i + (2 * newSize), j, newSize);
// ์ผ์ชฝ ๊ฐ์ด๋ฐ
makeStar(i, j + newSize, newSize);
// ๊ฐ์ด๋ฐ ๊ฐ์ด๋ฐ, ๊ณต๋ฐฑ์ผ๋ก ์ฑ์ฐ๊ธฐ
fillBlank(i + newSize, j + newSize, newSize);
// ์ค๋ฅธ์ชฝ ๊ฐ์ด๋ฐ
makeStar(i + (2 * newSize), j + newSize, newSize);
// ์ผ์ชฝ ์๋
makeStar(i , j + (2 * newSize), newSize);
// ๊ฐ์ด๋ฐ ์๋
makeStar(i + newSize , j + (2 * newSize), newSize);
// ์ค๋ฅธ์ชฝ ์๋
makeStar(i + (2 * newSize), j + (2 * newSize), newSize);
}
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in ));
int n = Integer.parseInt(br.readLine());
board = new char[n][n];
makeStar(0, 0, n);
StringBuilder sb = new StringBuilder();
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++) {
sb.append(board[i][j]);
}
sb.append('\n');
}
System.out.println(sb);
br.close();
}
}
'Algorithm > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BAEKJOON] ๋ฐฑ์ค ๊ธฐ๋ณธ ์ํ 2 4948 :: ๋ฒ ์คํธ๋ ๊ณต์ค (0) | 2022.04.11 |
---|---|
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 2448 :: ๋ณ ์ฐ๊ธฐ - 11 (0) | 2022.04.10 |
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 1992 :: ์ฟผ๋ํธ๋ฆฌ (0) | 2022.04.10 |
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 2630 :: ์์ข ์ด ๋ง๋ค๊ธฐ (0) | 2022.04.10 |
[BAEKJOON] ๋ฐฑ์ค ๋ถํ ์ ๋ณต 11728 :: ๋ฐฐ์ด ํฉ์น๊ธฐ (0) | 2022.04.10 |
Comments