본문 바로가기

백준/JAVA

[Baekjoon/JAVA] 2444번 - 별 찍기 - 7

Baekjoon Online Judge

문제로 이동

 

문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

 

입력

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

 

출력

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

 


예제 입력 예제 출력
5     *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

풀이

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int N = in.nextInt();

        // 첫째 줄부터 N번째 줄까지 차례대로 별을 출력
        for (int i = 1; i <= N; i++) {
            for (int j = 0; j < N - i; j++) // 공백 출력
                System.out.printf(" ");

            for (int j = 0; j < 2 * i - 1; j++) // 별 출력
                System.out.printf("*");

            System.out.println();
        }

        // N번째 줄부터 2 * N - 1번째 줄까지 차례대로 별을 출력
        for (int i = 1; i < N; i++) {
            for (int j = 0; j < i; j++) // 공백 출력
                System.out.printf(" ");

            for (int j = 0; j < 2 * (N - i) - 1; j++) // 별 출력
                System.out.printf("*");

            System.out.println();
        }
    }
}

N번째 줄까지는 삼각형 모양으로, 그 이후는 역삼각형 모양으로 별을 출력한다.