반응형
/* 모스부호 (1)
- 머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.
모스부호는 다음과 같습니다.
morse = {
'.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f',
'--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l',
'--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r',
'...':'s','-':'t','..-':'u','...-':'v','.--':'w','-..-':'x',
'-.--':'y','--..':'z'
}
*/
private let dictionary = [
".-": "a", "-...": "b", "-.-.": "c", "-..": "d", ".": "e", "..-.": "f", "--.": "g", "....": "h", "..": "i",
".---": "j", "-.-": "k", ".-..": "l", "--": "m", "-.": "n", "---": "o", ".--.": "p", "--.-": "q", ".-.": "r",
"...": "s", "-": "t", "..-": "u", "...-": "v", ".--": "w", "-..-": "x", "-.--": "y", "--..": "z"
]
func solution25(_ letter: String) -> String { letter.components(separatedBy: " ").map { dictionary[$0] ?? "" }.joined() }
func solution24(_ letter:String) -> String {
let morse:Dictionary<String,String> = [ ".-":"a","-...":"b","-.-.":"c","-..":"d",".":"e","..-.":"f","--.":"g","....":"h","..":"i",".---":"j","-.-":"k",".-..":"l","--":"m","-.":"n","---":"o",".--.":"p","--.-":"q",".-.":"r","...":"s","-":"t","..-":"u","...-":"v",".--":"w","-..-":"x","-.--":"y","--..":"z"]
return String(letter.split(separator: " ").map {
morse["\($0)"] ?? ""
}.joined())
}
[Swift] 코딩테스트 연습! Lv0.
반응형
'# 02 > Swift - CTP' 카테고리의 다른 글
[Swift] 코딩테스트 연습! Lv0. 구슬을 나누는 경우의 수 (0) | 2022.11.21 |
---|---|
[Swift] 코딩테스트 연습! Lv0. 가위 바위 보 (0) | 2022.11.21 |
[Swift] 코딩테스트 연습! Lv0. 개미 군단 (0) | 2022.11.21 |
[Swift] 코딩테스트 연습! Lv0. 순서쌍의 개수 (0) | 2022.11.21 |
[Swift] 코딩테스트 연습! Lv0. 진료 순서 정하기 (0) | 2022.11.21 |