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