β¨οΈ Language/swift
[νλ‘κ·Έλλ¨Έμ€ LV.1] μ«μ λ¬Έμμ΄κ³Ό μλ¨μ΄
hyebin (Helia)
2023. 3. 5. 17:43
λ°μν
νλ‘κ·Έλλ¨Έμ€ LV.1 λͺ¨μ
μ«μ λ¬Έμμ΄κ³Ό μλ¨μ΄
λ¬Έμ μ€λͺ
λ€μ€μ νλ‘λκ° μ«μλμ΄λ₯Ό νκ³ μμ΅λλ€. λ€μ€κ° νλ‘λμκ² μ«μλ₯Ό κ±΄λ¬ λ μΌλΆ μλ¦Ώμλ₯Ό μλ¨μ΄λ‘ λ°κΎΌ μΉ΄λλ₯Ό 건λ€μ£Όλ©΄ νλ‘λλ μλ μ«μλ₯Ό μ°Ύλ κ²μμ
λλ€.
λ€μμ μ«μμ μΌλΆ μλ¦Ώμλ₯Ό μλ¨μ΄λ‘ λ°κΎΈλ μμμ
λλ€.
- 1478 → "one4seveneight"
- 234567 → "23four5six7"
- 10203 → "1zerotwozero3"
μ΄λ κ² μ«μμ μΌλΆ μλ¦Ώμκ° μλ¨μ΄λ‘ λ°λμ΄μ‘κ±°λ, νΉμ λ°λμ§ μκ³ κ·Έλλ‘μΈ λ¬Έμμ΄ sκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§λλ€. sκ° μλ―Ένλ μλ μ«μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
μ°Έκ³ λ‘ κ° μ«μμ λμλλ μλ¨μ΄λ λ€μ νμ κ°μ΅λλ€.
μ«μ | μλ¨μ΄ |
0 | zero |
1 | one |
2 | two |
3 | three |
4 | four |
5 | five |
6 | six |
7 | seven |
8 | eight |
9 | nine |
μ ν μ¬ν
- 1 ≤ sμ κΈΈμ΄ ≤ 50
- sκ° "zero" λλ "0"μΌλ‘ μμνλ κ²½μ°λ μ£Όμ΄μ§μ§ μμ΅λλ€.
- return κ°μ΄ 1 μ΄μ 2,000,000,000 μ΄νμ μ μκ° λλ μ¬λ°λ₯Έ μ λ ₯λ§ sλ‘ μ£Όμ΄μ§λλ€.
μ μΆλ ₯ μ
s | result |
"one4seveneight" | 1478 |
"23four5six7" | 234567 |
"2three45sixseven" | 234567 |
"123" | 123 |
μ μΆλ ₯ μ μ€λͺ
μ μΆλ ₯ μ #1
- λ¬Έμ μμμ κ°μ΅λλ€.
μ μΆλ ₯ μ #2
- λ¬Έμ μμμ κ°μ΅λλ€.
μ μΆλ ₯ μ #3
- "three"λ 3, "six"λ 6, "seven"μ 7μ λμλκΈ° λλ¬Έμ μ λ΅μ μ μΆλ ₯ μ #2μ κ°μ 234567μ΄ λ©λλ€.
- μ μΆλ ₯ μ #2μ #3κ³Ό κ°μ΄ κ°μ μ λ΅μ κ°λ¦¬ν€λ λ¬Έμμ΄μ΄ μ¬λ¬ κ°μ§κ° λμ¬ μ μμ΅λλ€.
μ μΆλ ₯ μ #4
- sμλ μλ¨μ΄λ‘ λ°λ λΆλΆμ΄ μμ΅λλ€.
μ μΆ
import Foundation
func solution(_ s:String) -> Int {
var re = s
var num: [String] = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
for i in 0..<num.count{
re = re.replacingOccurrences(of: num[i], with: "\(i)")
}
return Int(re)!
}
μ λ ₯λ°μ λ¬Έμμ΄μ re λ³μμ μ μ₯νλ€.
numλ°°μ΄μ μ μΈνμ¬ index 0λΆν° 9κΉμ§ λμλλ μλ¨μ΄λ₯Ό μ μ₯νλ€.
0λΆν° 9κΉμ§ iλ₯Ό μ¦κ°μν€λ©°, λ¬Έμμ΄ reμ λμλλ μλ¨μ΄κ° ν¬νλμ΄ μλ€λ©΄ κ·Έ μλ¨μ΄λ₯Ό μ«μλ‘ λ°κΏ μ μ₯νλ€.
replacingOccurrences(of: with: ) μ¬μ© <of λ¬Έμμ΄ λΆλΆμ withλ‘ λ³κ²½>
λ¬Έμμ΄ reλ₯Ό IntνμΌλ‘ λ³νν΄ λ°ννλ€.
λ°μν