您想开设一个新的动物园。太神奇了 但是,作为您的贱民,您只想负担得起三字母的动物(每个人都知道动物的成本与其名称的长度成正比)。您的梦想就是让人们为看电影而付费elephant
。但是突然之间,您有了一个绝妙的主意。如果您只是将动物正确地放置在笔中,则可以创建elephant
!的视觉错觉。这是您的新“大象化合物”的俯视图:
elk
eel
pig
hog
ant
-------- (fence)
^
| viewing direction
哈哈,那些轻信的游客!
是的,这就是感知的原理。
挑战
给定一个仅由小写英文字母组成的非空词,请确定是否可以通过重叠以下30个三字母动物词来形成该词:
ant ape asp ass bat bee boa cat cod cow
dab dog eel elk emu fly fox gnu hog ide
jay kea kob koi olm owl pig rat ray yak
是的,有30多个,但这是一个不错的整数。
您可以选择接收此列表作为输入(任何未经处理的合理列表或字符串格式)。您可能会想要这样做,除非读取和处理此输入列表比使用您选择的语言对它们进行硬编码和压缩要贵得多。请注意,即使您将列表作为输入,也可以假设它始终是此列表,因此,如果您的代码依赖于传递的列表,该列表长30个元素且不包含带有的单词z
,那就很好。
每个单词可以多次使用。动物不能被割断,只能被其他动物部分隐藏。所以,ox
是不是可能的字符串,即使我们有fox
。
您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行参数或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。
您的代码应在几秒钟内处理任何测试用例。
适用标准代码高尔夫球规则。
更多例子
- 一个或两个字母的单词显然是虚假的。
- 上面列表中没有的任何三个字母的单词也是如此。
- 即使我们有
gnu
andrat
,也gnat
很虚假,因为没有办法将它们排列成只看到两个字母(我们不想将动物切成三等份)。
一些真实的例子:
pigment
ant
bee
olm
pig
antioxidant
fox
koi ide
ant ant
测试用例
大多数测试用例均来自针对字典运行参考实现。最后几个“单词”是随机生成的,仅用于确保提交足够有效。
真相:
ant
owl
bass
pride
bobcat
peafowl
elephant
hedgehogs
crocodile
antidemocrat
aspidoganoidei
biodegradability
angioelephantiasis
propreantepenultimate
acategnukeaidabeleenaspcodcoidyakwakoasshogattkjaypigkobolcodidaskearaywelkwboaxbeeuflapaspoapemaassaaspeewoglmabiemuwjadogacagnuepigjaycownbatjaemuifoxkeaeekekeagratsseeluejdoghogaolmgpigbeaeelemulasphogjaydabemukgnunueifoasdoglrayyadogpewlayroassasslgnuaspyyakkbokeaodxilopgnuasppigkobelratelkolmakob
koigdgaspslycoyakehrdabowbatdkkeapogkobelrowlyarpidepetlfoxeboaiderbeefoxbgnuapeocowgiecowlkoieeltbategspemuideatdogbeeecatgeaoccattbbeassgnasolkeaflyelkaognubeeabrratoccolmobodoglyelraywelkoxantowleedrayflypeappigogatraoyakccpiganaaspkobabjaspkointantybjbeeanolmuijaylratojaynueidflyjarayabatmmpigtfly
eolmantjkobeeaorayogaowldfoxayeassapibatmflylyraelaspsseolmbelkkaoantlmufodasgnueantaidenthyakcodoxuepigodggnuantatlcatnuuelkpemucbapeeoiahdogplkowletbatdrayarayoaelkgrayodcatgkantewkobeljaybeeyfkobtbdabadoghbatfoxtflygaspdeidogtowlkeaolmyraelfleelejayehogowlccatoxeabiemkobpigolmdkobrcidekyakabboyidep
虚假:
a
ox
ram
bear
koala
antelope
albatross
zookeeper
salamander
caterpillar
hippopotamus
koigdgaspslycoyakehrdabowbatdkkeapogkobelrowlyarpidepetlfoxeboaiderbeefoxbgnuapeocowgiecowlkoieeltbategspemuideatdogbeezcatgeaoccattbbeassgnasolkeaflyelkaognubeeabrratoccolmobodoglyelraywelkoxantowleedrayflypeappigogatraoyakccpiganaaspkobabjaspkointantybjbeeanolmuijaylratojaynueidflyjarayabatmmpigtfly
koigdgaspslycoyakehrdabowbatdkkeapogkobelrowlyarpidepetlfoxeboaiderbeefoxbgnuapeocowgiecowlkoieeltbategspemuideatdogbeeecatgeaoccattbbeassgnasolkeaflxelkaognubeeabrratoccolmobodoglyelraywelkoxantowleedrayflypeappigogatraoyakccpiganaaspkobabjaspkointantybjbeeanolmuijaylratojaynueidflyjarayabatmmpigtfly
beyeodpgspeclxlkbkaylldnceepkocbdmymsaogsowpbawbauaioluaaagaetdoaoialeoxaagspoelegflpylptylnolnatrjabaorkdteeydloiebbptatdtfdfgoodtbkoafmounbduaffcrfelcnawmxaskgaoenaattbaobgbgabnhkesbgaaaaotafkiiieatworginaeowaehuddegooaalowaoososaksahoimkulbtoadyyelkcmkacbuostadppcuglbnmotedfgfkoleldonknemomnmoutykg
You may optionally receive this list as input
-这是否意味着它不计入分数,而采用硬编码会计入分数?