感谢@ComradeSparklePony的标题。
这个挑战应该非常简单。给出三个列表。
第一个是名字的列表,在标题的情况下。
第二个是小写的形容词列表。
第三个是小写的名词列表。
请随机选择一个名称,可选的形容词和名词,然后输出<Name>'s <adjective> <noun>
。但是,每个单词必须以相同的字母开头。您可以假设所有单词都以字母开头。您还可以假设(但是请注意在答案中):
- 所有单词都完全由字母字符组成
- 每个名字至少有一个名词
- 每个名词至少有一个名字
但是,您不能假定名称和名词的特定对存在形容词,因为形容词是可选的,因此输出仍然有效。
您不必统一选择共享字母,尽管所有可用字母都必须具有非零的出现机会。但是,您必须确保给定字母的所有输出在您语言的随机数生成器的限制范围内,具有尽可能接近发生的机会。在形容词的情况下,这等同于有一个额外的条目,意思是“此字母没有形容词”,与该字母的所有其他形容词有相同的机会。
输入列表示例:
Joan Neil Nicola Oswald Sherman Stephanie
new novel old original second silent
jeep noun novel output second sheep snake
这些输入的示例输出(每行是一个单独的示例):
Stephanie's second second
Sherman's silent snake
Oswald's original output
Nicola's novel novel
Neil's noun
Joan's jeep
请注意,在最后两个示例中,单词之间没有多余的空格。
这是代码高尔夫球,因此最短的代码不会打破任何标准漏洞,这是有道理的!
万一它有帮助,您可以以大写形式输入所有内容,但仍然需要以句子形式输出。
j
形容词出现,那么机会会变成9比4吗?可能值得对输出放置概率,或对所有输出进行枚举-据我所知,不仅“给定字母的所有输出...”而且所有不同的输出也应该具有相同的可能性(每个列表中给定不同的值)。