백준 3448번 문자 인식 Kotlin

: ) YOUNG·2025년 2월 2일
1

알고리즘

목록 보기
444/458
post-thumbnail

백준 3448번 문자 인식 Kotlin

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

문제



생각하기


  • 소수 표현


동작





결과


코드



import java.io.File

// input
private var br = System.`in`.bufferedReader()

// variables
private lateinit var str: StringBuilder
private const val TEXT = "Efficiency ratio is "

fun main() {
    val bw = System.out.bufferedWriter()
    
    val T = br.readLine().toInt()

    repeat(T) {
        str = StringBuilder()
        while (true) {
            val temp = br.readLine()
            if (temp.isNullOrEmpty()) break
            str.append(temp)
        }

        bw.write(solve())
    }

    bw.close()
} // End of main()

private fun solve(): String {
    val sb = StringBuilder()

    val target = str.toString()
    val len = target.length.toDouble()
    val count = target.count { it == '#' }.toDouble()

    val temp = (len - count) / len * 100
    val ans = "%.1f".format(temp)
    val ansToInt = ans.toDouble().toInt()


    sb.append(
        "$TEXT${
            if (ans != "$ansToInt.0") {
                "%.1f".format(temp)
            } else {
                "$ansToInt"
            }
        }%.\n"
    )

    return sb.toString()
} // End of solve()

0개의 댓글

관련 채용 정보