새소식

인기 검색어

프로그래머스/Lv.2

[Swift] 주차 요금 계산

  • -
import Foundation

func solution(_ fees:[Int], _ records:[String]) -> [Int] {
    
    var result = [String : Int]()
    
    let records = records.map {
        $0.components(separatedBy: " ")
    }.forEach {
        let tmp = $0[0].components(separatedBy: ":")
        let time = Int(tmp[0])! * 60 + Int(tmp[1])!
        if result[$0[1]] == nil {result[$0[1]] = 0}
        if $0[2] == "IN" {result[$0[1]]! -= time} else {result[$0[1]]! += time}
    }
    
    result.forEach {
        if $0.value <= 0 {result[$0.key]! += 1439}
    }
    
    return result.sorted {
        $0.key < $1.key
    }.map {
        fees[1] + Int((ceil(Double($0.value - fees[0]) / Double(fees[2])))) * fees[3]
    }.map {
        $0 < fees[1] ? fees[1] : $0
    }
}

'프로그래머스 > Lv.2' 카테고리의 다른 글

[Swift] 귤 고르기  (0) 2023.03.13
[Swift] 압축  (1) 2023.03.13
[Swift] 타겟넘버  (0) 2023.02.07
[Swift] k진수에서 소수 개수 구하기  (0) 2023.02.05
[Swift] 프린터  (0) 2023.02.05
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.