본문 바로가기
스터디(beakjoon)

Kotlin] 백준 25304번 문제 풀이

by 김마리님 2023. 4. 13.

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

 

25304번: 영수증

준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것

www.acmicpc.net

 

 

풀이

더보기

처음 입력받은 값을 토탈값으로, 두 번째 입력값을 구매한 제품의 종류로 하되, 굳이 인덱스를 쓸 필요 없어서 while을 이용해 값을 더하고, while문 루프 마지막에 제품의 종류에서 하나씩 카운트를 까는 방식으로 값을 더했다.

루프문 안에서는 전역변수로 먼저 지정해둔 실제 금액을 0으로 선언하고 루프마다 해당 전역변수에 값을 더하는 방식으로 실행함.

 

import java.util.Scanner

fun main(args: Array<String>) {
    question25304()
}

fun question25304() {
    var sc = Scanner(System.`in`)
    var totalPrice = sc.nextLine().toInt()
    var realPrice = 0
    var case = sc.nextLine().toInt()

    while (case > 0) {
        var product = sc.nextLine().split(" ").map { it.toInt() }
        realPrice += (product[0] * product[1])
        case -= 1
    }

    println(if(totalPrice == realPrice) {
        "Yes"
    } else {
        "No"
    })
}

 

반응형