본문 바로가기
Problem Solving

[Swift] 프로그래머스 숫자 문자열과 영단어(lv. 1)

by DuncanKim 2023. 1. 23.
728x90

[Swift] 프로그래머스 숫자 문자열과 영단어(lv. 1)

 

1. 문제

https://school.programmers.co.kr/learn/courses/30/lessons/81301

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

2. 접근

옹알이에서 사용했던 replacingOccurrences 그리고 dictionary를 사용하면 쉽게 풀 수 있다.

아래 코드에서는 dict를 두고 상수로 사용하고 있으며, innerS를 두어 내부의 문자들을 바꿀 수 있도록 하였다.

그러고 마지막에 리턴은 Int로 해주면 쉽게 할 수 있다.

 

문제만 길다;

 

3. 코드

import Foundation

func solution(_ s:String) -> Int {
    var innerS = s
    let dict: [String: String] = ["zero" : "0", "one": "1", "two": "2", "three": "3", "four": "4", "five": "5", "six": "6", "seven": "7", "eight": "8", "nine": "9"]
    
    for (key, value) in dict {
        innerS = innerS.replacingOccurrences(of: key, with: value)
    }
    return Int(innerS)!
}
728x90

댓글