PS(Problem Solving)/BOJ

[백준/BOJ] 2440번: 별 찍기 - 3

JunsuKim 2021. 11. 16.
728x90

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

 

2440번: 별 찍기 - 3

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

www.acmicpc.net

문제

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

입력

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

출력

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

해설

우선 규칙을 찾아보도록 하자.

5를 입력했을 때

0행에는 5개, 1행에는 4개, 2행에는 3개 . . . 4행에는 1개의 별이 찍혀있다.

따라서 n-i(행)-1보다 j(열)의 값이 작거나 같을 때만 별을 찍으면 된다.

ex) n = 5

0행 -> 5 - 0 - 1 = 4 -> 0, 1, 2, 3, 4열에 별이 찍히게 된다.

1행 -> 5 - 1 - 1 = 3 -> 0, 1, 2, 3열에 별이 찍힌다.

. . .

4행 -> 5- 4 - 1 = 0 -> 0행에 별이 찍힌다.

소스 코드

import java.lang.StringBuilder

fun main() {
    val input = readLine()!!.toInt()
    val sb = StringBuilder()
    for(i in 0 until input){
        for(j in 0 until input){
            if(j <= input - i - 1) sb.append("*")
        }
        sb.append("\n")
    }
    println(sb.toString())
}
728x90

댓글