#P3573. I18n

I18n

题目描述 国际化(Internationalization)和本地化(Localization)是两个长单词,通常缩写为 i18ni18nl10nl10n。其中 ini-nln l-n 之间的数字表示省略的字母数量。这种缩写方法非常高效,可自然应用于任何单词。

一个单词只能在文本中首次出现完整形式后才能使用缩写。缩写规则是:保留单词的首字母和尾字母,中间省略的字母用省略的数量代替。

你的任务是编写程序,在给定文本中尽可能扩展此类缩写。扩展需满足有效性和唯一性:

有效性:扩展后的完整单词必须在文本中出现过,且缩写形式与完整单词的正确缩写一致(不区分大小写)。例如,i18ni18n 扩展为 internationalizationinternationalization 是有效的(即使原文中首字母为大写 I);而 p14np14n 扩展为 parameterizationparameterization 无效(因该单词未出现过),a11na11n 扩展为 abbreviationabbreviation 也无效(正确缩写应为 a10na10n)。

唯一性:某个缩写只能对应唯一的完整单词。例如,l10nl10n 扩展为 localizationlocalization 是唯一的;而 p5mp5m 可能对应 problemproblemprogramprogram,此时无法扩展。

输入格式

输入最多 10001000 行,每行最多 80 字符,包含由空格或特殊符号(-, ,, ., ", (, ), :, ;, !, ?)分隔的若干单词。

单词分为两种:

完整单词:由 1321-32 个拉丁字母组成,可能为全小写、首字母大写或全大写(如 hello,Hello,HELLOhello, Hello, HELLO)。 缩写单词:由首字母、2302-30 的数字、尾字母组成,大小写形式与完整单词对应(如 h5o,H3l,H4Oh5o, H3l, H4O)。

输出格式

输出原始文本,但需将符合条件的缩写扩展为完整单词。扩展后的单词大小写需与缩写形式一致。 无效或有歧义的缩写保持不变。输出行长度可超过 80 字符。 输入样例 1

plaintext

The first line of sample input.

The s4d l2e of s4e i3t.

Lone, lone, l4e...

S4e input last l4e!

输出样例 1

plaintext

The first line of sample input.

The s4d line of sample input.

Lone, lone, l4e...

Sample input last l4e!