背景
一个俄罗斯套娃(或俄语嵌套娃娃)是一组相互匹配的内部娃娃。我不小心弄混了我的俄罗斯套娃娃娃的收藏,我不记得里面有哪个。
目的
给定唯一字符串的列表,将它们分类到嵌套的俄罗斯套娃中。每个字符串是一个单独的玩偶,而俄罗斯套娃则是一个字符串列表。
规则
设min(a,b)
字符串a
和的字典最小化b
。让其a ⊂ b
表示a
为的子字符串b
。然后,
- 娃的清单必须按字典顺序排序
- 字符串
a
可以适合字符串,b
如果a ⊂ b
- 如果
a ⊂ b
和a ⊂ c
,a
则将进入内部min(b,c)
- 如果
a ⊂ c
和b ⊂ c
,但a ⊄ b
b ⊄ a
,则只有min(a,b)
会进入c
- 如果既
a ⊂ c
和b ⊂ c
,且也a ⊂ b
,则只会b
进入内部c
。即,超级字符串先于子字符串,这样娃就不会过早终止。
例子
In:
hahaha, hah, lol, lololol, bahaha, bah, haha, ah
Out:
bahaha, bah, ah
hahaha, haha, hah
lololol, lol
In:
aa, aaaa, a, aaaaaaaaaa
Out:
aaaaaaaaaa, aaaa, aa, a
3
在这里的第一篇文章,请指出任何需要的哑巴/修复方法。
—
sujeet
欢迎来到PPCG!如果您不确定发布的内容是否足够好,可以先将其发布在沙盒中。
—
user202729 '18
这不是强制性的,只需将其保留在此处即可。社区喜欢它。
—
user202729 '18
将来@sujeet,请尝试先发布到沙箱。在您将挑战发布到主站点之前,这里是获得有关挑战的反馈的地方。现在不必担心,因为这个挑战看起来还不错,但是这是未来需要考虑的事情。
—
Rɪᴋᴇʀ
应该是什么结果
—
Zgarb
ab, ba, aba, bab
?根据规则3,ab
和ba
都应加入aba
,而根据规则4,ba
不能与aba
或进入bab
。