본문 바로가기

개발(합니다)/알고리즘&코테

알고리즘 단계별로 풀어보기 : BOJ-2440(별찍기 [3])

반응형

문제(출처)

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


입력

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


출력

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


예제 입력

5


예제 출력

*****

****

***

**

*


내 풀이

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

public class Main {
    public static void main(String args[]) {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        
        try {
            int num = Integer.parseInt(br.readLine().split(" ")[0]);
            for(int i = 1; i <= num; i++) {
                for(int j = i; j <= num; j++) {
                    bw.write("*");
                }
                bw.newLine();
            }
            bw.flush();
            bw.close();
        } catch (NumberFormatException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }        
    }
}


내 풀이 해석

별찍기 [1]의 응용으로 문제를 풉니다.
첫번째 행에서 num까지 출력한다. i = 1 num = 5
두번째 행에는 num보다 i-1 적게 출력한다. i = 2 num = 5
세번째 행에는 num보다 i-2 적게 출력한다. i = 3 num = 5

네번째 행에는 num보다 i-3 적게 출력한다. i = 4 num = 5

다섯 번째 행에는 nu보다 i-4 적게 출력한다. i =5 num =5

반응형