알고리즘/프로그래머스
[Kotlin] 다리를 지나는 트럭
728x90
반응형
import java.util.*
class Solution {
fun solution(bridge_length: Int, weight: Int, truck_weights: IntArray): Int {
var answer = 0
var totalWeight = 0 // 다리 위에 있는 트럭의 무게
val truckQueue = LinkedList<Int>(truck_weights.toList())
val bridgeQueue = LinkedList<Int>(IntArray(bridge_length) { 0 }.toList())
while (true) {
if (truckQueue.isEmpty() && totalWeight == 0) break
totalWeight -= bridgeQueue.pop()
if (truckQueue.isNotEmpty() && totalWeight + truckQueue.peek() <= weight) {
val truck = truckQueue.pop()
bridgeQueue.add(truck)
totalWeight += truck
} else {
bridgeQueue.add(0)
}
answer++
}
return answer
}
}
728x90
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[Kotlin] 튜플 (0) | 2024.01.17 |
---|---|
[Kotlin] 의상 (1) | 2024.01.08 |
[2단계] N개의 최소공배수 (0) | 2023.12.19 |
[2단계] 가장 큰 수 (0) | 2023.12.05 |
[2단계] KAKAO BLINE RECRUITMENT - 캐시 (0) | 2023.12.04 |
댓글