[백준] J박스 (5354)(kotlin)

문제 설명

백준 5354번 문제 링크

입력 및 출력

» 입력

첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 박스의 크기가 주어진다. 박스의 크기는 10보다 작거나 같다.

» 출력

각 테스트 케이스에 대해서, 입력으로 주어지는 크기의 J박스를 출력한다. 박스와 박스 사이에는 빈 줄을 하나 출력한다.

예제 입출력(테스트케이스)

입력 출력
3
3
5
4
###
#J#
###

#####
#JJJ#
#JJJ#
#JJJ#
#####

####
#JJ#
#JJ#
####

문제 풀이1

import java.io.BufferedReader
import java.io.InputStreamReader

fun main(args: Array<String>) = with(BufferedReader(InputStreamReader(System.`in`))) {
    val list = mutableListOf<String>()
    var count = 0

    repeat(readLine().toInt()) {
        val j = readLine().toInt()

        for (i in 0 until j) {
            if (i == 0 || i == j - 1) list.add("#".repeat(j))
            else {
                var str = ""
                for (k in 0 until j) {
                    str += if (k == 0 || k == j - 1) "#"
                    else "J"
                }
                list.add(str)
            }
        }
        count++
        if (count != j) list.add("")
    }

    println(list.joinToString("\n"))
}