MUKER_DEV with iOS

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ํ• ์ธํ–‰์‚ฌ ๋ณธ๋ฌธ

๐Ÿค– ์•Œ๊ณ ๋ฆฌ์ฆ˜/programmers

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ํ• ์ธํ–‰์‚ฌ

MUKER 2023. 3. 29. 14:09
 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr


๋‚˜์˜ ํ’€์ด

func solution(_ want:[String], _ number:[Int], _ discount:[String]) -> Int {
    var dic = [String: Int]() // want์™€ number๊ฐ€ ๋‹ด๊ฒจ์žˆ๋Š” ๋”•์…”๋„ˆ๋ฆฌ
    for i in 0..<want.count { dic[want[i]] = number[i] } // ๋”•์…”๋„ˆ๋ฆฌ ์ดˆ๊ธฐํ™”
    var result = 0
    
    for i in 0...discount.count-10 {
        var tempDic = dic
        for i in discount[i..<i+10] {
            if tempDic[i] != nil && tempDic[i]! > 0 {
                tempDic[i]! -= 1
            } else { break }
        }
        if tempDic.values.reduce(0, {$0+$1}) == 0 { result += 1 }
    }
    return result
}