CF600A Extract Numbers

题目描述

给定一个字符串 $s$。我们将最长的连续且不包含 ','(逗号)和 ';'(分号)的字符序列称为一个“单词”。例如,在字符串 "aba,123;1a;0" 中包含四个单词:"aba"、"123"、"1a" 和 "0"。单词可以为空,比如字符串 $s$ =";;" 包含由分号分隔的三个空单词。 你需要找出所有在给定字符串中且为非负整数(没有前导零)的单词,并用它们按原顺序组成一个新的字符串 $a$,各单词之间用 ',' 隔开。其余单词同样按原顺序,用 ',' 隔开组成字符串 $b$。 注意,"101"、"0" 视为整数,但 "01" 和 "1.0" 不是。 例如,对于字符串 "aba,123;1a;0",$a$ 应为 "123,0",$b$ 应为 "aba,1a"。

输入格式

输入的唯一一行包含字符串 $s$,其中 $1 \leq |s| \leq 10^5$。字符串仅包含 '.'、','、';'、数字、小写或大写拉丁字母。

输出格式

第一行输出字符串 $a$,第二行输出字符串 $b$。每个字符串需用双引号(ASCII 34)括起来。 如果没有单词为数字,则第一行输出一个短横线(ASCII 45);如果所有单词都是数字,则第二行输出一个短横线。

说明/提示

在第二个示例中,字符串 $s$ 包含五个单词:"1"、""、"01"、"a0"、""。 由 ChatGPT 5 翻译