QOJ.ac

QOJ

時間限制: 3 s 記憶體限制: 2048 MB 總分: 100

#7705. 制作你自己的摩尔斯电码回文

统计

回文(palindrome)是指一个单词、数字、短语或其他字符序列,从后往前读和从前往后读是一样的,例如 madamracecar1881。短语回文忽略大小写、标点符号和单词边界。例如:

Madam I'm Adam.

摩尔斯电码(Morse code)是一种电信中使用的编码方法,将文本字符编码为两种不同持续时间的信号序列,称为点(dots)和划(dashes),或称 ditsdahs。摩尔斯电码以电报发明者之一塞缪尔·摩尔斯(Samuel Morse)的名字命名。国际摩尔斯电码的字母和数字编码(该编码不区分大小写)如下:

如果一个单词、数字或短语中所有字母和数字对应的摩尔斯电码序列(忽略字符编码之间的空格)从后往前读和从前往后读是一样的,则称其为摩尔斯电码回文(Morse Code Palindrome)。

例如:

159 ·---- ····· ----·

Footstool ··-- --- --- - --- ·-·· --- --- ·-··

编写一个程序,输入一个字符串,确定为了使其成为摩尔斯电码回文,需要在单词末尾添加的最少字符数。

输入格式

输入包含一行,为一个长度不超过 30 的字符串,由大写字母和/或数字组成,可能包含空格和标点符号。

输出格式

输出包含一行。

如果输入字符串已经是摩尔斯电码回文,输出数字 0。否则,输出需要添加的字符数,后跟一个空格,再跟一个由大写字母和/或数字组成的字符串,将其添加到原字符串末尾后使其成为摩尔斯电码回文。

由于可能存在多个有效答案(见下文样例 2 和 3),如果添加的字符数小于或等于裁判给出的答案,且输入字符串加上你输出的字符串后构成摩尔斯电码回文,则结果将被判定为正确。

样例

样例输入 1

FOOT

样例输出 1

1 L

样例输入 2

FOOTS

样例输出 2

3 0QI

样例输入 3

FOOTS

样例输出 3

3 0GD

样例输入 4

FOOTSTOOL

样例输出 4

0

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.