{"problem":{"name":"[信息与未来 2021] 摩尔斯电码","description":{"content":"摩尔斯电码就是这样一种早期的数字通信协议，它通过喇叭发声长短来表示不同的英文字母： 1. 点（半角点号 `.`），喇叭响 $1$ 单位时间，读作“滴”（$\\tt dit$）； 1. 划（半角减号 `-`），喇叭响 $3$ 单位时间，读作“嗒”（$\\tt dah$）； 1. 字符/单词间的停顿，字符停顿 $3$ 单位时间，单词停顿 $7$ 单位时间。 下图列出了摩尔斯电码和英文字母之间的对应： ","description_type":"Markdown"},"platform":"Luogu","limit":{"time_limit":1000,"memory_limit":131072},"difficulty":{"LuoguStyle":"P2"},"is_remote":true,"is_sync":true,"sync_url":null,"sign":"LGB3757"},"statements":[{"statement_type":"Markdown","content":"摩尔斯电码就是这样一种早期的数字通信协议，它通过喇叭发声长短来表示不同的英文字母：\n\n1. 点（半角点号 `.`），喇叭响 $1$ 单位时间，读作“滴”（$\\tt dit$）；\n1. 划（半角减号 `-`），喇叭响 $3$ 单位时间，读作“嗒”（$\\tt dah$）；\n1. 字符/单词间的停顿，字符停顿 $3$ 单位时间，单词停顿 $7$ 单位时间。\n\n下图列出了摩尔斯电码和英文字母之间的对应：\n\n![](https://cdn.luogu.com.cn/upload/image_hosting/ztfabvb2.png)\n\n例如，大家可以试试把 `... --- ...` 对照上面的表格翻译成英文（空格代表字符的分割）。没错，这就是著名的 “$\\tt SOS$” 紧急求救信号。现在，你需要写一个程序把收到的摩尔斯电码翻译回英文字符。\n\n## Input\n\n输入数据的第一行是一个整数 $n$，代表共有 $n$ 个需要解码的英文字母。\n\n输入数据的第二行包含 $n$ 个摩尔斯电码点/划组成的字符串（字符串之间用一个空格隔开），每个字符串仅包含若干半角减号 `-` 和半角点号 `.`，且保证能翻译为 $26$ 个英文字母中的一个。\n\n## Output\n\n输出一行，为摩尔斯电码解码后得到的字符串。\n\n[samples]\n\n## Background\n\n早期的电报机只能表达两种状态：电路导通和电路断开。电路导通时喇叭可以发声；断开时则不发声。如何用这样的机器来传递人类能理解的信号呢？聪明的你一定想到了——时间的长短可以表达不同的含义（例如长代表 $\\tt{1}$、短代表 $\\tt{0}$），然后再把 $\\tt{01}$ 的二进制序列对应到字符就可以啦。\n\n## Note\n\n解释：`The quick brown fox jumps over the lazy dog` 是一个经典的包含了所有 $26$ 个字母的句子。~~此外请注意因为文本宽度限制，样例第二行中的摩尔斯电码产生了断行。在实际的输入数据中，所有的摩尔斯电码均在同一行。~~\n\n> 划掉部分为原题面所加，在迁移至洛谷时已修复样例。\n\n对于 $100\\%$ 的数据，$1\\leq n\\leq 10^3$。\n\n>本题原始满分为 $15\\text{pts}$。","is_translate":false,"language":"English"}],"meta":{"iden":"LGB3757","tags":["字符串","2021","江苏","信息与未来"],"sample_group":[["3\n... --- ...","SOS"],["35\n- .... . --.- ..- .. -.-. -.- -... .-. --- .-- -. ..-. --- -..- .--- ..- -- .--. ... --- ...- . .-. - .... . .-.. .- --.. -.-- -.. --- --.","THEQUICKBROWNFOXJUMPSOVERTHELAZYDOG"]],"created_at":"2026-03-03 11:09:25"}}