λ°μν
μ¨μ΄μλ μ«μμ λ§μ
λ¬Έμ μ€λͺ
λ¬Έμμ΄ my_stringμ΄ λ§€κ°λ³μλ‘ μ£Όμ΄μ§λλ€. my_stringμ μλ¬Έμ, λλ¬Έμ, μμ°μλ‘λ§ κ΅¬μ±λμ΄ μμ΅λλ€. my_stringμμ μμ°μλ€μ ν©μ return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
μ ν μ¬ν
- 1 ≤ my_stringμ κΈΈμ΄ ≤ 1,000
- 1 ≤ my_string μμ μμ°μ ≤ 1000
- μ°μλ μλ νλμ μ«μλ‘ κ°μ£Όν©λλ€.
- 000123κ³Ό κ°μ΄ 0μ΄ μ ννλ κ²½μ°λ μμ΅λλ€.
- λ¬Έμμ΄μ μμ°μκ° μλ κ²½μ° 0μ return ν΄μ£ΌμΈμ.
μ μΆλ ₯ μ
my_string | result |
"aAb1B2cC34oOp" | 37 |
"1a2b3c4d123Z" | 133 |
μ μΆλ ₯ μ μ€λͺ
μ μΆλ ₯ μ #1
- "aAb1B2cC34oOp"μμ μμ°μλ 1, 2, 34μ λλ€. λ°λΌμ 1 + 2 + 34 = 37μ return ν©λλ€.
μ μΆλ ₯ μ #2
- "1a2b3c4d123Z"μμ μμ°μλ 1, 2, 3, 4, 123μ λλ€. λ°λΌμ 1 + 2 + 3 + 4 + 123 = 133μ return ν©λλ€.
μ μΆ
import Foundation
func solution(_ my_string:String) -> Int {
var temp = ""
var arr = [Int]()
for s in my_string{
if s.isNumber {
temp += String(s)
}else if !temp.isEmpty{
arr.append(Int(temp)!)
temp = ""
}
}
if !temp.isEmpty{
arr.append(Int(temp)!)
}
return arr.reduce(0, +)
}
λ¬Έμμ΄μ νλμ© λΉκ΅νλ©° λ¬Έμμ΄μ μ«μκ° μλ€λ©΄ arr λ°°μ΄μ μ μ₯νλ€.
μ΄ν reduce ν¨μλ₯Ό μ¬μ©νμ¬ λ°°μ΄μ ν©μ κ΅¬ν΄ λ°ννλ€.
λ€λ₯Έ νμ΄
import Foundation
func solution(_ my_string:String) -> Int {
let pattern = #"\d+"#
let regex = try! NSRegularExpression(pattern: pattern)
let range = NSRange(my_string.startIndex..<my_string.endIndex, in: my_string)
let matches = regex.matches(in: my_string, range: range)
return matches.reduce(0) { $0 + Int(NSString(string: my_string).substring(with: $1.range))!}
}
μ κ·μμ μ¬μ©νμ¬ λ¬Έμμ΄ μ€ μ«μμΈ λΆλΆμ μ°Ύμ ν©μ ꡬν ν λ°ννλ€.
λ°μν
'β¨οΈ Language > swift' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[νλ‘κ·Έλλ¨Έμ€ LV.0] μΌκ°νμ μμ±μ‘°κ±΄ (2) (0) | 2023.01.02 |
---|---|
[νλ‘κ·Έλλ¨Έμ€ LV.0] μμ μ§λ (0) | 2023.01.02 |
[νλ‘κ·Έλλ¨Έμ€ LV.0] λ€νμ λνκΈ° (0) | 2023.01.02 |
[νλ‘κ·Έλλ¨Έμ€ LV.0] μ΅λκ° λ§λ€κΈ° (2) (0) | 2023.01.02 |
[νλ‘κ·Έλλ¨Έμ€ LV.0] μΊλ¦ν°μ μ’ν (0) | 2023.01.02 |