JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ - ํ๋ก๊ทธ๋๋จธ์ค(Swift)
2022. 10. 6. 14:21ใํ๋ก๊ทธ๋๋จธ์ค-Swift
JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ - ํ๋ก๊ทธ๋๋จธ์ค(Swift)
๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12951
๊ธฐ์กด์ ๋์ ํ์ด
๊ณต๋ฐฑ์ ๋ฐ๋ผ์ ๊ฐ๊ฐ์ ๋ฌธ์์ด์ ๊ท์น์ ์ ์ฉํ๋ค.
ํ์ง๋ง ์ด ํ์ด๋ ๊ณต๋ฐฑ์ด ์ฌ๋ฌ๊ฐ์ผ๋ ํ ์คํธ์ผ์ด์ค๋ฅผ ํต๊ณผํ์ง ๋ชปํ๋ค.
์ฆ abc def๋ผ๋ ๋ฌธ์์ด์ด ์์๋ solutionํจ์๋ฅผ ๊ฑฐ์น๋ฉด Abc Def๊ฐ ์๋ Abc Def๊ฐ ๋๋ค.
๊ทธ๋์ ๊ณ ์ฐจํจ์๋ฅผ ์ ์ ๋ด๋ ค๋๊ณ ๊ณต๋ฐฑ์ ๊ฐ์๋ฅผ ์ธ๊ธฐ ์ํด ๋ค๋ฅธ ์ฝ๋๋ก ์ ๊ทผํ๋ค.
func solution(_ s:String) -> String {
let arr = s.split(separator: " ").map{String($0)}
return arr.map{ $0.first!.isNumber ? $0.lowercased() : $0.capitalized }.joined(separator: " ")
}
๊ฐ์ ํ ๋์ ํ์ด
func solution(_ s:String) -> String {
var idx = 0
var result = ""
for x in s {
if x == " " {
result += String(x)
idx = 0
} else {
if idx == 0 {
result += String(x).uppercased()
} else {
result += String(x).lowercased()
}
idx += 1
}
}
return result
}
๋ค๋ฅธ ์ฌ๋์ ํ์ด
์ง๊ด์ ์ธ ๋ ผ๋ฆฌ๋ก ์์ฑํ์ ์ ๊ฐ์ ธ์๋ค.
๊ณต๋ฐฑ์ uppercasedํ๊ฑฐ๋ lowercasedํ๋๋ผ๋ ๊ณต๋ฐฑ์ด๊ธฐ ๋๋ฌธ์ ์ ์ ๋น์นธ์ด ๊ณต๋ฐฑ์ธ์ง ์๋์ง์ ๋ฐ๋ผ ๋ก์ง์ ์ฒ๋ฆฌํ ์ ์์๋ค.
func solution(_ s:String) -> String {
var isBeforeBlank: Bool = true
var result = ""
for x in s {
result += isBeforeBlank ? x.uppercased() : x.lowercased()
isBeforeBlank = (x == " ")
}
return result
}
'ํ๋ก๊ทธ๋๋จธ์ค-Swift' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํผ๋ณด๋์น ์ (0) | 2022.10.09 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค - ์ฌ๋ฐ๋ฅธ ๊ดํธ(Swift) (0) | 2022.10.08 |
ํ๋ก๊ทธ๋๋จธ์ค - ์ ๊ณ ๊ฒฐ๊ณผ๋ฐ๊ธฐ(Swift) (0) | 2022.10.05 |
์ฑ๊ฒฉ์ ํ ๊ฒ์ฌํ๊ธฐ - ํ๋ก๊ทธ๋๋จธ์ค(Swift) (1) | 2022.10.05 |
ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ - ํ๋ก๊ทธ๋๋จธ์ค(Swift) (0) | 2022.10.04 |