MUKER_DEV with iOS

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๋Œ€์ถฉ ๋งŒ๋“  ์žํŒ ๋ณธ๋ฌธ

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

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๋Œ€์ถฉ ๋งŒ๋“  ์žํŒ

MUKER 2023. 4. 27. 15:31
 

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

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

programmers.co.kr


์„ฑ๊ณต ํ’€์ด

func solution(_ keymap:[String], _ targets:[String]) -> [Int] {
    var set = [Character: Int]()
    var result = [Int]()
    
    for str in keymap {
        for i in str.enumerated() {
            set[i.element] = min(set[i.element] ?? Int.max, i.offset+1)
        }
    }

loop: for str in targets {
        var sum = 0
        for i in str {
            guard let n = set[i] else {
                result.append(-1)
                continue loop
            }
            sum += n
        }
        result.append(sum)
    }
    return result
}