์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0 _ Swift] Day43 ๋ชจ์Šค๋ถ€ํ˜ธ(1)

โŒจ๏ธ Cording Test/Programmers

by AHN.Jihyeon 2024. 6. 19. 21:53

๋ณธ๋ฌธ


 

๐Ÿ“„ ๋ฌธ์ œ 1. ๋ชจ์Šค๋ถ€ํ˜ธ(1)

๐Ÿ”— ๋ฌธ์ œ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/120838

 

 

 

 

 

โœ…  ์ œ์ถœ ์ฝ”๋“œ

import Foundation

func solution(_ letter:String) -> String {
    //๋ฌธ์ œํ’€์ด ๊ณผ์ •
    var result = "" 
    // ์ž…๋ ฅ๋œ letter ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ์ €์žฅ
    var newLetter = letter.components(separatedBy: " ") 
    
    //๋ชจ์Šค๋ถ€ํ˜ธ Dictionary ํƒ€์ž… ์„ ์–ธ
    let morse: [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"
    ]
    
    //๋ฐฐ์—ด๋กœ ์ €์žฅ๋œ ๋ชจ์Šค๋ถ€ํ˜ธ ์ˆœํšŒ
    for i in newLetter { 
        result += morse[i]!  // Dictionary์—์„œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ Optional ํƒ€์ž…์ด๋ฏ€๋กœ ๊ฐ•์ œ ์–ธ๋ž˜ํ•‘ ์‚ฌ์šฉ
    }
    return result
}

 

์ฒ˜์Œ์— ๋ฌธ์ œ๋ฅผ ๋ดค์„ ๋•Œ ์–ด๋ ค์›Œ ๋ณด์—ฌ์„œ ์‰ฝ๊ฒŒ ์†์ด ๊ฐ€์ง€ ์•Š์•˜๋˜ ๋ฌธ์ œ.

๋ง‰์ƒ ํ’€์–ด๋ณด๋‹ˆ ๋”•์…”๋„ˆ๋ฆฌ๋กœ morse๋ฅผ ์„ ์–ธํ•ด์ฃผ๊ณ 

์ž…๋ ฅ๋œ letter์˜ ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” components(separatedBy: "")๋ฅผ ์‚ฌ์šฉํ•ด

ํ•ด๋‹น key์˜ value๋ฅผ ๊ตฌํ•˜๋ฉด ๋˜๋Š” ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ์˜€๋‹ค. 

 

์ด๋•Œ, ๋”•์…”๋„ˆ๋ฆฌ์–ด์„ธ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์˜ฌ๋•Œ ์˜ต์…”๋„ํƒ€์ž…์ด๋ผ ๊ฐ•์ œ ์–ธ๋žฉํ•‘์„ ํ•ด์ฃผ์—ˆ๋‹ค.  

 

 

 

 

 

 

 

 

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ