์•Œ๊ณ ๋ฆฌ์ฆ˜(programmers)

[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์‹œ์ € ์•”ํ˜ธ

yeggrrr๐Ÿผ 2024. 5. 2. 16:35
728x90

<๋ฌธ์ œ>


 

<ํ’€์ด>

func solution(_ s:String, _ n:Int) -> String {
    let upperStr = Array("abcdefghijklmnopqrstuvwxyz".uppercased())
    let lowerStr = Array("abcdefghijklmnopqrstuvwxyz")
    var result = ""
    
    for i in s {
        // ๋Œ€๋ฌธ์ž์— ํฌํ•จ๋œ ๊ฒฝ์šฐ
        if upperStr.contains(i) {
            var indexNum = (upperStr.firstIndex(of: i) ?? 0) + n
            
            if indexNum > 25 {
                indexNum = indexNum - 26
            }
            
            result.append(upperStr[indexNum])
        // ์†Œ๋ฌธ์ž์— ํฌํ•จ๋œ ๊ฒฝ์šฐ
        } else if lowerStr.contains(i) {
            var indexNum = (lowerStr.firstIndex(of: i) ?? 0) + n
            
            if indexNum > 25 {
                indexNum = indexNum - 26
            }
            
            result.append(lowerStr[indexNum])
        } else {
            result.append(i)
        }
    }
    return result
}

print(solution("AB", 1)) // BC
print(solution("z", 1)) // a
print(solution("a B z", 4)) // e F d

 

728x90