본문 바로가기

백준/JAVA

[Baekjoon/JAVA] 2443번 - 별 찍기 - 6

Baekjoon Online Judge

문제로 이동

 

문제

첫째 줄에는 별 2×N-1개, 둘째 줄에는 별 2×N-3개, ..., N번째 줄에는 별 1개를 찍는 문제

별은 가운데를 기준으로 대칭이어야 한다.

 

입력

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

 

출력

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

 


예제 입력 예제 출력
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 = 0; 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();
        }
    }
}

공백의 수 : 반복문을 반복한 횟수

별의 수 : 2 * (N - 반복한 횟수) - 1