반응형
문제
https://www.acmicpc.net/problem/29701
해설
해시 사용이 핵심이었다.
morse_code_dict = {
'.-': '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', '.----': '1', '..---': '2', '...--': '3', '....-': '4', '.....': '5',
'-....': '6', '--...': '7', '---..': '8', '----.': '9', '-----': '0', '--..--': ',', '.-.-.-': '.',
'..--..': '?', '---...': ':', '-....-': '-', '.--.-.': '@'
}
def solution(morse):
answer = ""
morse_letters = morse.split(" ")
for code in morse_letters:
if code in morse_code_dict:
answer += morse_code_dict[code]
else:
answer += " "
return answer
# count는 사실상 파이썬에선 별 필요 없음
count = input()
message = input()
print(solution(message))
반응형