最常用的词是什么?
给定一个句子,您的程序必须遍历整个句子,计算每个单词的出现频率,然后输出最常用的单词。由于句子没有固定的长度,因此可能会很长,因此您的代码必须尽可能短。
规则/要求
- 每个提交应该是完整的程序或功能。如果它是一个函数,则只需将函数调用添加到程序底部即可使其可运行。其他任何内容(例如C中的标头)都必须包括在内。
- 您的语言必须有免费的口译/编译器。
- 如果可能,请提供指向可以测试您的程序的站点的链接。
- 您的程序不得向写入任何内容
STDERR
。 - 您的程序应从
STDIN
(或使用您语言中最接近的替代语言)输入。 - 禁止出现标准漏洞。
- 你的程序必须是不区分大小写(
tHe
,The
和the
所有有助于计数the
)。 - 如果没有最常见的单词(请参见测试案例3),则您的程序应不输出任何内容。
“单词”的定义:
您可以通过在空格处分割输入文本来获得单词列表。输入将永远不包含任何其他类型的空格,而不是普通空格(特别是没有换行符)。但是,最后的单词应仅包含字母数字(az,AZ,0-9),连字符(-)和撇号(')。您可以通过在拆分单词之前删除所有其他字符或将它们替换为空格来实现此目的。为了保持与规则的先前版本兼容,不需要包括撇号。
测试用例
The man walked down the road.
==> the
-----
Slowly, he ate the pie, savoring each delicious bite. He felt like he was truly happy.
==> he
-----
This sentence has no most frequent word.
==>
-----
"That's... that's... that is just terrible!" he said.
==> that's / thats
-----
The old-fashioned man ate an old-fashioned cake.
==> old-fashioned
-----
IPv6 looks great, much better than IPv4, except for the fact that IPv6 has longer addresses.
==> IPv6
-----
This sentence with words has at most two equal most frequent words.
==>
注意:第三和第七个测试用例没有输出,您可以选择第四个。
计分
根据字节对节目评分。通常的字符集是UTF-8,如果使用其他字符集,请指定。
挑战结束后,字节数最少的程序(称为code-golf)将获胜。
意见书
为确保您的答案显示出来,请使用以下Markdown模板以标题开头。
# Language Name, N bytes
N
您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如:
# Ruby, <s>104</s> <s>101</s> 96 bytes
如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字:
# Perl, 43 + 2 (-p flag) = 45 bytes
您还可以将语言名称设置为链接,然后该链接将显示在页首横幅代码段中:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes
排行榜
这是一个堆栈片段,用于按语言生成常规排行榜和获胜者概述。
don't d'ont dont a a
?会dont
吗?
dont
。如果没有,a
。但是大多数提交都可以,因此dont
是正确的答案。
ipv6
最后一个测试用例的有效输出是吗?