[백준] 2441번 : 별 찍기 - 4 - JAVA(자바)

Life is ninanino·2022년 10월 31일
0

[백준] JAVA

목록 보기
27/37
post-thumbnail

https://www.acmicpc.net/problem/2441


줄마다 공백을 0부터 n-1까지 늘려가는 문제이다

++정답코드

package 백준;// @ author ninaaano

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class b_2441 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());

        for (int i = 1; i <= n; i++) {
            for (int j = 1; j < i; j++) {
                System.out.print(" ");
            }
            for (int k = n; k >= i; k--) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

for문 안에서 두개의 for문이 같이 돌아간다
총 5줄을 출력해야하는 문제이기 때문에 i는 거의 별찍기 문제의 고정 for문이다
j는 1부터 i보다 작을 때 까지 공백을 출력한다
만약 i가 1이면 j는 i보다 같기때문에 공백을 출력하지 않는다
하지만 k는 n부터 시작한다. (여기서 n은 5다.)
k가 i보다 크거나 같을때까지 k는 감소한다
i는 1이기 때문에 5,4,3,2,1을 출력해서 * 이 5개가 출력되게 된다.
한 줄을 다 적었으면 개행을 하고 다시 for문을 돌려서
j는 개행할 때마다 공백을 1,2,3,4개씩 출력한다.

profile
백엔드 프로그래밍을 공부하고 있습니다. AWS, 클라우드 환경에 대해 관심이 많습니다.

0개의 댓글