问题描述 |
---|
小调觉得看英文很难,尤其是长句型,于是就发明了一种往句子中添加逗号的规则。 1、如果文中某个单词前面有逗号,那么查找该单词在文中所有出现的位置,并在这些位置的前面都添加上逗号,除非该位置是句子中的第一个单词,或者前面已经有逗号了。 2、如果文中某个单词后面有逗号,那么查找该单词在文中所有出现的位置,并在这些位置的后面都添加上逗号,除非该位置是句子中最后一个单词,或者后面已经有逗号了。 3、重复应用规则 1 和规则 2,直到任何一个单词的前后都不需要添加逗号。 例如有句子: cpp hello world. hello world, hello. world just now just. 因为在第二句中的 world 后面有逗号,所以第三句的 world 后面要添加逗号,但第一句的 world 后面不添加逗号,因为这是第一句最后一个单词。 因为在第二句中的第二个 hello 前面有逗号,所以第一句的 hello 前要添加逗号,但第二句的第一个 hello 前不添加逗号,因为这是第二句的第一个单词。 另外,需要注意到,第三句的 world 后面添加了逗号之后,也就意味着第三句的第一个 just 之前有了逗号,因此第三句的第二个 just 之前也要添加逗号。 最终,所有位置都不需要再添加逗号,句子变为了: cpp, hello world. hello world, hello. world, just now, just. |
输入描述 |
输入一行文本。文本中每个字符只可能是小写英文字母、逗号(英文半角)、句号(英文半角)、空格。单词由小写英文字母组成。文本中遵循以下约束: 1、文本由若干个单词组成; 2、单词由若干个字母组成; 3、文本中两个单词之间的间隔,要么是一个空格,要么是一个逗号加一个空格,要么是一个句号加一个空格; 4、文本中最后一个单词后面是一个句号,这个句号后面没有空格。 |
输出描述 |
输出根据小调的逗号添加规则变化后的文本。不要换行。 注意:添加逗号时也要让文本符合【输入】中提及的文本约束,即逗号后面有个空格。 |
样例输入复制样例 |
one, two. one tree. four tree. four four. five four. six five. |
样例输出 |
one, two. one, tree. four, tree. four, four. five, four. six five. |
提示说明 |
对于 66% 的测试用例:单词数量不会超过 100,文本长度不会超过 500。 对于 100% 的测试用例:单词数量不会超过 1e5,文本长度不会超过 5e5。 |
相关 |