diff --git "a/ksinji/202511/28 BOJ \353\263\204 \354\260\215\352\270\260 - 11.md" "b/ksinji/202511/28 BOJ \353\263\204 \354\260\215\352\270\260 - 11.md" new file mode 100644 index 00000000..a30b7cde --- /dev/null +++ "b/ksinji/202511/28 BOJ \353\263\204 \354\260\215\352\270\260 - 11.md" @@ -0,0 +1,48 @@ +```java +import java.io.*; +import java.util.*; + +public class Main { + + static char[][] map; + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int n = Integer.parseInt(br.readLine()); + + map = new char[n][2 * n - 1]; + + for (int i = 0; i < n; i++) { + Arrays.fill(map[i], ' '); + } + + draw(0, n - 1, n); + + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < n; i++) { + sb.append(map[i]).append('\n'); + } + + System.out.print(sb); + } + + static void draw(int r, int c, int n) { + if (n == 3) { + map[r][c] = '*'; + map[r + 1][c - 1] = '*'; + map[r + 1][c + 1] = '*'; + for (int i = -2; i <= 2; i++) { + map[r + 2][c + i] = '*'; + } + return; + } + + int half = n / 2; + + draw(r, c, half); + draw(r + half, c - half, half); + draw(r + half, c + half, half); + } +} + +```