在有线电话、无线语音通信技术普及前,军事和民用通信主要依赖于电报。发报方将文字按莫尔斯电码进行编码后发出,收报方则通过反向解码得到原始报文。
摩尔斯电码是一种时通时断的信号代码,它通过短音和长音的不同的排列组合来表达不同的英文字母、数字和标点符号。其中,短音以“・”标记,读作滴(Di);长音以“—”标记,读作“嗒”(Da)。如果滴音的时长为t,则嗒音的时长为3t,字符间的停顿时长为3t,词间的停顿时长则为7t。
输入格式:
编码好的Morse电文
说明:用/表示字符间隔,用//表示单词间隔
输出格式:
明文字符串
输入样例:
在这里给出一组输入。例如:
--/---/.-./..././/-.-./---/-../.
输出样例:
在这里给出相应的输出。例如:
morse code
Morse编码字典,可复制使用
morse = {
# Letters
"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": "--..",
# Numbers
"0": "-----","1": ".----","2": "..---","3": "...--","4": "....-",
"5": ".....","6": "-....","7": "--...","8": "---..","9": "----.",
# Punctuation
"&": ".-...","'": ".----.","@": ".--.-.",")": "-.--.-","(": "-.--.",
":": "---...",",": "--..--","=": "-...-","!": "-.-.--",".": ".-.-.-",
"-": "-....-","+": ".-.-.",'"': ".-..-.","?": "..--..","/": "-..-.",
}
morse = {
# Letters
"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": "--..",
# Numbers
"0": "-----","1": ".----","2": "..---","3": "...--","4": "....-",
"5": ".....","6": "-....","7": "--...","8": "---..","9": "----.",
# Punctuation
"&": ".-...","'": ".----.","@": ".--.-.",")": "-.--.-","(": "-.--.",
":": "---...",",": "--..--","=": "-...-","!": "-.-.--",".": ".-.-.-",
"-": "-....-","+": ".-.-.",'"': ".-..-.","?": "..--..","/": "-..-.",
}
morse_reverse={v:k for k,v in morse.items()}
def morse(text):
words=text.split('//')
decoded_text=[]
for word in words:
chars=word.split('/')
decoded_chars=[morse_reverse.get(char,'?') for char in chars]
decoded_text.append(''.join(decoded_chars))
return ' '.join(decoded_text)
s=input()
print(morse(s))