[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day46 ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์
๐ ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/120896
ํด๋น ์ฝ๋๊ฐ ํ๋ฆฐ ์ด์ ๋ ๋ฐํ ํ์ ๋ ๋ง์ง ์์์ง๋ง,
s์์ ํ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์๋ฅผ ์ฐพ์ง ์๊ณ ๋จ์ํ ์ค๋ณต์ ์ ๊ฑฐํ๊ณ ๋ฐํํ๊ธฐ ๋๋ฌธ์
์ฌ๋ฌ ๋ฒ ๋ฑ์ฅํ ๋ฌธ์๋ค๋ ๋ค์ด๊ฐ ์ ์๋ ์ค๋ฅ๊ฐ ์์๋ค.
๋ฐ๋ผ์ ๋ค์ ํ๋ฒ ์๊ฐํด๋ณด์์ ๋,
1. ๊ฐ ๋ฌธ์์ ๋ฑ์ฅ ํ์๋ฅผ ์นด์ดํธ -> ๋ฐ๋ณต๋ฌธ๊ณผ ๋์ ๋๋ฆฌ ์ฌ์ฉ
2. ์ด ์ค ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์ ์ถ์ถ
3. ์ถ์ถํ ๋ฌธ์๋ฅผ ์ฌ์ ์์ผ๋ก ์ ๋ ฌ
4. ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์๊ฐ ์๋ค๋ฉด ๋น ๋ฐฐ์ด ๋ฆฌํด
๋์ ๋๋ฆฌ๋ก ์ ๊ทผํ๊ณ 1๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์๋ฅผ ๊ฑฐ๋ฅด๊ธฐ ์ํด ๋ฐ๋ณต๋ฌธ์์ ํํ์ ์ฌ์ํด ์กฐ๊ฑด์์ ์ด์ฉํ๋ค.
์ฌ๊ธฐ์ ๋ฐ์ํ ์ค๋ฅ๋ sorted() ๋ ์ ๋ ฌ๋ ๋ฐฐ์ด์ ๋ฐํํ๊ธฐ ๋๋ฌธ์ ๋ฐํํ์ ์ธ String๊ณผ ๋ง์ง ์์๊ธฐ ๋๋ฌธ์ด๋ค.
import Foundation
func solution(_ s:String) -> String {
//๋ฌธ์ ํ์ด ๊ณผ์
//1. ๊ฐ ๋ฌธ์์ ๋ฑ์ฅ ํ์๋ฅผ ์นด์ดํธ -> ๋ฐ๋ณต๋ฌธ
//2. ์ด ์ค ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์ ์ถ์ถ
//3. ์ถ์ถํ ๋ฌธ์๋ฅผ ์ฌ์ ์์ผ๋ก ์ ๋ ฌ
//4. ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์๊ฐ ์๋ค๋ฉด ๋น ๋ฌธ์์ด ๋ฆฌํด
var result = ""
var dic = [String : Int]()
for i in s {
var count = 1
if dic.keys.contains(String(i)) {
count += 1
}
dic.updateValue(count, forKey: String(i))
}
//๋์
๋๋ฆฌ๋ฅผ ์ํํ๋ฉฐ ๋ฑ์ฅํ ํ์๊ฐ 1์ด๋ฉด result์ ์ถ๊ฐ
for (key,value) in dic {
if value == 1 {
result.append(contentsOf: key)
}
}
//๊ฒฐ๊ณผ๋ฅผ ์ฌ์ ์์ผ๋ก ์ ๋ ฌํด์ ๋ฐํ -> ์ด๋ result์ ํ์
์ [String.Element]
return String(result.sorted())
}
[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day48 ๐บ์ปจํธ๋กค์ ํธ (0) | 2024.06.26 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day47 7์ ๊ฐ์ (0) | 2024.06.25 |
[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day45 ๐บk์ ๊ฐ์ (0) | 2024.06.22 |
[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day44 ๐บ์จ์ด์๋ ์ซ์์ ๋ง์ (0) | 2024.06.21 |
[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day43 ๋ชจ์ค๋ถํธ(1) (0) | 2024.06.19 |