这个挑战是基于D.Parnas中描述的问题,该问题基于将系统分解为模块所用的标准,并且在J.Morris的《功能语言的实际编程》中进行了阐述。
stdin
以一种合理,方便的语言格式编写一个程序或函数,该程序或函数以或从中获取书名列表作为参数。例如,
Green Sleeves
Time Was Lost
要么
("Green Sleeves";"Time Was Lost")
返回或打印到stdout
按字母顺序排列的关键字列表,通过将每个关键字括在尖括号(<
和>
)中,显示其在原始标题中的上下文。与输入一样,输出可以采用合理的格式,这对于您的语言非常方便-换行符分隔的行,字符串列表等:
<Green> Sleeves
Time Was <Lost>
Green <Sleeves>
<Time> Was Lost
Time <Was> Lost
标题将由一系列用单个空格分隔的关键字组成。关键字将仅包含字母字符。关键字应按字典顺序排序。标题将是唯一的,并且关键字在每个标题内将是唯一的,但是在多个标题中可能存在相同的关键字。如果一个关键字存在多个标题,则输出应以任意顺序列出每个外观。例如,给定此输入:
A Dugong
A Proboscis
有效的输出将是:
<A> Proboscis
<A> Dugong
A <Dugong>
A <Proboscis>
要么:
<A> Dugong
<A> Proboscis
A <Dugong>
A <Proboscis>
这是代码问题 -获胜者是最短的字节解决方案。不允许出现标准漏洞。
如果同一关键字在标题中出现多次,该怎么办?应该按照出现的顺序出现,还是允许任意顺序出现?
—
彼得·泰勒
@PeterTaylor:从规范来看,“标题将是唯一的,并且每个标题中的关键字将是唯一的……”
—
JohnE