본문 바로가기
카테고리 없음

부족한 금액 계산

by 코드닭 2024. 5. 2.

map() 과 sum() 함수를 이용하면 짧은 줄록 총 비용을 구할 수 있다

val amount = (1..count).map { it * price }.sum()

코드 실행시간이 좀 긴거 같은데

이러면 map 이 돌아갈때 O(n), sum() 이 돌아갈때 O(n) 으로 시간 복잡도가 O(n^2) 이 된다

 

class Solution {
    fun solution(price: Int, money: Int, count: Int): Long {
        var amount: Long = 0
        for (i in 1 .. count) {
            amount += i * price
            }
        return if (amount > money) amount - money else 0
    }
}

반복문을 한번만 돌리면서 총 비용을 구한 다음 조건문을 반환하면 시간복잡도가 O(n) 이다

이제 좀 빨라졌다