[백준 1049 - Kotlin] 기타줄

kldaji·2022년 3월 28일
1

백준

목록 보기
46/76
post-custom-banner

문제링크

import java.io.BufferedReader
import java.io.BufferedWriter

private lateinit var bufferedReader: BufferedReader
private lateinit var bufferedWriter: BufferedWriter

fun main() {
    bufferedReader = System.`in`.bufferedReader()
    bufferedWriter = System.out.bufferedWriter()

    // 1. get (n, m)
    val (n, m) = bufferedReader
        .readLine()
        .split(" ")
        .map { it.toInt() }

    // 2. get string info
    var minPack = Int.MAX_VALUE
    var minPiece = Int.MAX_VALUE
    for (i in 0 until m) {
        val (pack, piece) = bufferedReader
            .readLine()
            .split(" ")
            .map { it.toInt() }
        if (pack < minPack) minPack = pack
        if (piece < minPiece) minPiece = piece
    }

    if (minPack >= minPiece * 6) bufferedWriter.write("${minPiece * n}")
    else {
        var total = 0
        total += minPack * (n / 6)
        val remain = n % 6
        total += if (minPack > minPiece * remain) minPiece * remain
        else minPack
        bufferedWriter.write("$total")
    }

    bufferedReader.close()
    bufferedWriter.close()
}

profile
다양한 관점에서 다양한 방법으로 문제 해결을 지향하는 안드로이드 개발자 입니다.
post-custom-banner

0개의 댓글