๐Ÿ“œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ/BAEKJOON\์žฌ๊ท€

๋ฐฑ์ค€ 2447๋ฒˆ : ๋ณ„ ์ฐ๊ธฐ - 10 (JAVA) ๋ฌธ์ œ ํ’€์ด

2020. 11. 11. 17:54
๋ชฉ์ฐจ
  1. ๐Ÿš€๋ฌธ์ œ
  2. ๐Ÿˆ์ž…๋ ฅ
  3. ๐Ÿฑโ€๐Ÿ‘ค์ถœ๋ ฅ
  4. ๐Ÿ’ฌ ์˜ˆ์ œ ์ž…๋ ฅ           
  5. ๐Ÿ’ฌ ์˜ˆ์ œ ์ถœ๋ ฅ
  6.  
  7. ๐ŸŒˆ ๋‚˜์˜ ํ’€์ด
  8.  
  9.  
  10. ๐Ÿ›ด์ „์ฒด ์ฝ”๋“œ
๋ฐ˜์‘ํ˜•

๐Ÿš€๋ฌธ์ œ

์žฌ๊ท€์ ์ธ ํŒจํ„ด์œผ๋กœ ๋ณ„์„ ์ฐ์–ด ๋ณด์ž. 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๋ฒˆ์งธ ์ค„๊นŒ์ง€ ๋ณ„์„ ์ถœ๋ ฅํ•œ๋‹ค.

๐Ÿ’ฌ ์˜ˆ์ œ ์ž…๋ ฅ           

27

๐Ÿ’ฌ ์˜ˆ์ œ ์ถœ๋ ฅ

***************************
* ** ** ** ** ** ** ** ** *
***************************
***   ******   ******   ***
* *   * ** *   * ** *   * *
***   ******   ******   ***
***************************
* ** ** ** ** ** ** ** ** *
***************************
*********         *********
* ** ** *         * ** ** *
*********         *********
***   ***         ***   ***
* *   * *         * *   * *
***   ***         ***   ***
*********         *********
* ** ** *         * ** ** *
*********         *********
***************************
* ** ** ** ** ** ** ** ** *
***************************
***   ******   ******   ***
* *   * ** *   * ** *   * *
***   ******   ******   ***
***************************
* ** ** ** ** ** ** ** ** *
***************************

 

 

๐ŸŒˆ ๋‚˜์˜ ํ’€์ด

๋จผ์ € ์ฒ˜์Œ ๋ณ„์˜ ํŒจํ„ด์„ ์ฐพ์•„ ๋ณด๋„๋ก ํ•˜์ž.

 

 

๊ฐ€๋กœ ์„ธ๋กœ๊ฐ€ 9์ด๊ณ , ๊ฐ€์šด๋ฐ๊ฐ€ ๋น„์–ด์žˆ๋Š” 9X9 ๋ณ„์˜ ํŒจํ„ด์ด ๊ณ„์† ๋ฐ˜๋ณต๋˜๋Š” ํŒจํ„ด์ด๋‹ค.

 

์ด ํŒจํ„ด์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ๋ถ„ํ•  ํ•ด๋ณด๋ฉด..

์ด๋ ‡๊ฒŒ ๊ฐ€์šด๋ฐ๊ฐ€ ๋น„์–ด์žˆ๋Š” 3X3 ํŒจํ„ด์ด ๋ฐ˜๋ณต์ด ๋œ๋‹ค.

 

์ธ๋ฑ์Šค๋ฅผ ํ‘œ์‹œํ•ด๋ณด๋ฉด, 

27X27  ํŒจํ„ด์˜ ์ธ๋ฑ์Šค

 

9X9 -> 3X3 ์œผ๋กœ ๋ถ„ํ• ๋œ ๋ชจ์Šต

 

๋ถ„ํ• ๋œ ํŒจํ„ด์˜ ์ธ๋ฑ์Šค๋ฅผ ๋‚˜์—ดํ•ด๋ณด๋ฉด ,  (0,0) ์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ธธ์ด๊ฐ€ 27์ธ ๋ณ„์˜ ํŒจํ„ด์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ถ„ํ• ์ด ๋œ๋‹ค.

๊ธธ์ด๊ฐ€ 27์ด๊ณ  (0,0)์œผ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ณ„์˜ ํŒจํ„ด์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ถ„ํ• ์ด ๋œ๋‹ค.

1)startX: 0 , startY: 0 , len: 9

2)startX: 0 , startY: 9 , len: 9

3)startX: 0 , startY: 18 , len: 9

 

4)startX: 9 , startY: 0 , len: 9

5)startX: 9 , startY: 9 , len: 9

6)startX: 9 , startY: 18 , len: 9

 

7)startX: 18 , startY: 0 , len: 9

8)startX: 18 , startY: 9 , len: 9

9)startX: 18 , startY: 18 , len: 9

์ด๋ ‡๊ฒŒ ์ด 9๊ฐœ๋กœ ๋ถ„ํ• ์ด ๋œ๋‹ค. 

์—ฌ๊ธฐ์„œ ๋˜ ๊ธธ์ด๊ฐ€ 9์ธ ํŒจํ„ด์„ ๊ธธ์ด๊ฐ€ 3์ธ ํŒจํ„ด์œผ๋กœ ๋ถ„ํ•  ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

๊ธธ์ด๊ฐ€ 3์ธ ํŒจํ„ด์œผ๋กœ ๋ถ„ํ• ์‹œํ‚ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋œ๋‹ค.

1)startX: 0 , startY: 0 , len: 3

2)startX: 0 , startY: 3 , len: 3

3)startX: 0 , startY: 6 , len: 3

 

4)startX: 3 , startY: 0 , len: 3

5)startX: 3 , startY: 3 , len: 3

6)startX: 3 , startY: 6 , len: 3

 

7)startX: 6 , startY: 0 , len: 3

8)startX: 6 , startY: 3 , len: 3

9)startX: 6 , startY: 6 , len: 3

...
..
81)startX: 24 , startY: 24 , len: 3

์ด๋ ‡๊ฒŒ ์ด 81๊ฐœ๊ฐ€ ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

 

์œ„์— ๊ทธ๋ฆผ์„ ๋ณด๊ฒŒ ๋˜๋ฉด ์กฐ๊ฑด ๋‘๊ฐ€์ง€๊ฐ€ ๋ณด์ธ๋‹ค.

์กฐ๊ฑด1) ์žฌ๊ท€ ํ˜ธ์ถœ ๋˜๋Š” ๋ถ€๋ถ„์˜ N์€ N / 3์ด ๋œ๋‹ค.

์กฐ๊ฑด2) startX : 0*N , 1*N , 2*N ... ์ด๋ ‡๊ฒŒ ํ˜ธ์ถœ์ด ๋œ๋‹ค.

 

์ด ๋ถ€๋ถ„์„ ๊ตฌํ˜„ ํ•ด๋ณด๋ฉด

for(int i=0; i<3; i++){
	for(int j=0; j<3; j++){
 		star(arr, startX + i*(N/3) , startY + j*(N/3) , N/3)   
    }
}

์ด๋Ÿฐ์‹์œผ๋กœ ํ˜ธ์ถœ ํ•ด์ฃผ๋ฉด ๋˜๊ณ 

 

์žฌ๊ท€ ๋ฉ”์†Œ๋“œ์— ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ’์œผ๋กœ (๋ฐฐ์—ด์˜ ์ฃผ์†Œ๊ฐ’, ์‹œ์ž‘์ x์ขŒํ‘œ, ์‹œ์ž‘์ y์ขŒํ‘œ, ๊ธธ์ด) ๋ฅผ ๋„˜๊ฒจ์ฃผ๋ฉด ๋œ๋‹ค.

์ด๋Ÿฐ์‹์œผ๋กœ ๊ณ„์† ์žฌ๊ท€ ํ˜ธ์ถœ์„ ํ•˜๊ฒŒ ๋˜๋ฉด ? ์ข…๋ฃŒ ์กฐ๊ฑด์„ ์„ค์ • ํ•ด์ค˜์•ผ ํ•œ๋‹ค. 

N == 1 ์ด ๋  ๋•Œ๊นŒ์ง€ ๊ณ„์† ์žฌ๊ท€ ํ˜ธ์ถœ์„ ํ•ด์ฃผ๊ณ , N == 1์ธ ๊ฒฝ์šฐ์— *์„ ๋„ฃ์–ด์ฃผ๋ฉด ๋˜๋Š”๋ฐ, 

์ด๋•Œ ์ฃผ์˜ ํ•ด์•ผ ํ•  ์ ์€, ๊ฐ€์šด๋ฐ ๋ถ€๋ถ„์€ ๋ณ„์„ ์ฑ„์šฐ๋ฉด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ฐ˜๋ณต๋ฌธ์—์„œ i == 1 && j == 1 ์ธ ๊ฒฝ์šฐ์— ํ˜ธ์ถœ์„ ํ•˜์ง€ ์•Š๋„๋ก ์„ค์ • ํ•ด์ฃผ๋ฉด ๋œ๋‹ค!

private static void star(int[] arr, int startX, int startY, int N){
	if( N == 1 ) {
    	arr[startX, startY] = "*"; // 1. ๋ณ„์„ ๋„ฃ์–ด์ฃผ๊ณ  
        return ; // 2. ์ข…๋ฃŒ
    }
    
    for(int i=0; i<3; i++){
    	for(int j=0; j<3; j++){
        	if( !(i==1 && j==1) ){
     			star(arr, startX + i*(N/3) , startY + j*(N/3) , N/3); 
            }
        }
    }
   
}

 

 

 

 

๐Ÿ›ด์ „์ฒด ์ฝ”๋“œ

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        String[][] arr;
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        int N = Integer.parseInt(bf.readLine());
        arr = new String[N][N];
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[0].length; j++) {
                arr[i][j] = " ";
            }
        }
        star(arr, 0, 0, N);

        for (String[] strings : arr) {
            for (String string : strings) {
                bw.write(string + "");
            }
            bw.write("\n");
        }
        bw.flush();
        bw.close();
    }

    public static void star(String[][] arr, int x, int y, int N) {
        if (N == 1) {
            arr[x][y] = "*";
            return; // ์ข…๋ฃŒ
        }

        for (int i = 0; i < 3; i++) {
            for (int j = 0; j < 3; j++) {
                if (!(i == 1 && j == 1)) {
                    star(arr, x + i * (N / 3), y + j * (N / 3), N / 3);
                }
            }
        }
    }
}

 

๋ฐ˜์‘ํ˜•
์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)
  1. ๐Ÿš€๋ฌธ์ œ
  2. ๐Ÿˆ์ž…๋ ฅ
  3. ๐Ÿฑโ€๐Ÿ‘ค์ถœ๋ ฅ
  4. ๐Ÿ’ฌ ์˜ˆ์ œ ์ž…๋ ฅ           
  5. ๐Ÿ’ฌ ์˜ˆ์ œ ์ถœ๋ ฅ
  6.  
  7. ๐ŸŒˆ ๋‚˜์˜ ํ’€์ด
  8.  
  9.  
  10. ๐Ÿ›ด์ „์ฒด ์ฝ”๋“œ
'๐Ÿ“œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ/BAEKJOON\์žฌ๊ท€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ๋ฐฑ์ค€ 1074๋ฒˆ : Z (JAVA) ๋ฌธ์ œ ํ’€์ด
  • ๋ฐฑ์ค€ 11729๋ฒˆ : ํ•˜๋…ธ์ด ํƒ‘ ์ด๋™์ˆœ์„œ (JAVA) ๋ฌธ์ œ ํ’€์ด
  • ๋ฐฑ์ค€ 10870๋ฒˆ : ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜ 5 (JAVA) ๋ฌธ์ œ ํ’€์ด
  • ๋ฐฑ์ค€ 10872๋ฒˆ : ํŒฉํ† ๋ฆฌ์–ผ (JAVA) ๋ฌธ์ œ ํ’€์ด
iseunghan
iseunghan
๊พธ์ค€ํ•˜๊ฒŒ ์—ด์‹ฌํžˆ..
iseunghan๊พธ์ค€ํ•˜๊ฒŒ ์—ด์‹ฌํžˆ..
iseunghan
iseunghan

๊ณต์ง€์‚ฌํ•ญ

  • ์–ด์ œ๋ณด๋‹ค ๋‚˜์€ ์˜ค๋Š˜์ด ๋˜๊ธฐ ์œ„ํ•ด ๐Ÿ”ฅ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (261)
    • ๐Ÿ’ Spring (14)
      • ๊ฐœ๋… ๋ฐ ์ดํ•ด (2)
      • Spring ํ•ต์‹ฌ ๊ธฐ์ˆ  (24)
      • Spring REST API (8)
      • Spring MVC, DB ์ ‘๊ทผ ๊ธฐ์ˆ  (7)
      • Spring Security (23)
      • Spring in Action (1)
    • ๐ŸŒป JAVA (84)
      • ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ (20)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ž๋ฃŒ๊ตฌ์กฐ (13)
      • ๋””์ž์ธ ํŒจํ„ด (7)
      • ์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ (43)
      • JUnit (1)
    • ๐Ÿ”– Snippets (3)
      • Javascript (3)
    • โš™๏ธ Devops (22)
      • โ› Git (11)
      • ๐Ÿณ Docker (6)
      • ๐Ÿง Linux (3)
      • ๐ŸŒˆ Jenkins (1)
      • ๐Ÿ“ฌ Kafka (1)
    • ๐Ÿ’ฌ ETC.. (4)
      • ๐Ÿ’ป macOS (2)
    • ๐ŸŒง๏ธ ORM (2)
      • JPA (2)
    • ๐Ÿ Python (2)
    • ๐Ÿ“š Databases (15)
      • ์˜ค๋ผํด๋กœ ๋ฐฐ์šฐ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋ก ๊ณผ ์‹ค์Šต(2ํŒ) (3)
      • RealMySQL 8.0 (8)
    • ๐Ÿ”ฅ Computer Science (5)
      • ๐Ÿ“ก ๋„คํŠธ์›Œํฌ (5)
    • ๐Ÿท๏ธ ํ˜‘์—… (1)
    • ๐Ÿ“œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ (38)
      • BAEKJOON\์ˆ˜ํ•™ 1, ์ˆ˜ํ•™ 2 (8)
      • BAEKJOON\์žฌ๊ท€ (5)
      • BAEKJOON\๋ธŒ๋ฃจํŠธ ํฌ์Šค (3)
      • BAEKJOON\์ •๋ ฌ (1)
      • BAEKJOON\๋ฐฑํŠธ๋ž˜ํ‚น (5)
      • BAEKJOON\BFS, DFS (6)
      • BAEKJOON\์ด๋ถ„ํƒ์ƒ‰ (1)
      • BAEKJOON\๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ (9)
      • BAEKJOON\๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ (0)
    • โœจ ISEUNGHAN (1)

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๊ธ€

์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
๋ฐ˜์‘ํ˜•
hELLO ยท Designed By ์ •์ƒ์šฐ.
iseunghan
๋ฐฑ์ค€ 2447๋ฒˆ : ๋ณ„ ์ฐ๊ธฐ - 10 (JAVA) ๋ฌธ์ œ ํ’€์ด
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๊ฐœ์ธ์ •๋ณด

  • ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ
  • ํฌ๋Ÿผ
  • ๋กœ๊ทธ์ธ

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.