|
|
1
11
较短的shell版本:
如果你想要不区分大小写的排名,改变
稍微短一点,如果你对排名被颠倒和可读性因缺乏空格而受损感到高兴的话。此时钟为46个字符:
(如果允许您首先将输入文件重命名为“i”,则可以将此值减少到38。) 注意到,在这种特殊情况下,没有任何单词出现超过9次,我们可以通过从最后一类中删除“-n”参数来删除3个字符:
这样就可以在不重命名输入文件的情况下将此解决方案减少到43个字符。(或者35岁,如果你愿意的话。)
使用
|
|
|
2
12
C,153:
在以下位置读取文件
如果只生成列表而不打印到控制台,那么它是93个字符。
|
|
|
3
7
VIM 60 :1,$!tr " " "\n"|tr -d "\t "|sort|uniq -c|sort -n|tail -n 10 |
|
|
4
7
VIM 36
|
|
|
5
5
哈斯克尔,102个字符(哇,非常接近于原版):
J ,仅55个字符:
(我还没有弄清楚如何在J中优雅地执行文本操作……它在阵列结构数据方面要好得多。) NB. read the file
<1!:1<'input.txt'
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------...
| Washington Washington Adams Jefferson Jefferson Madison Madison Monroe Monroe John Quincy Adams Jackson Jackson Van Buren Harrison DIES Tyler Polk Taylor DIES Fillmore Pierce ...
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------...
NB. split into lines
<;._2[1!:1<'input.txt'
+--------------+--------------+---------+-------------+-------------+-----------+-----------+----------+----------+---------------------+-----------+-----------+-------------+-----------------+---------+--------+---------------+------------+----------+----...
| Washington| Washington| Adams| Jefferson| Jefferson| Madison| Madison| Monroe| Monroe| John Quincy Adams| Jackson| Jackson| Van Buren| Harrison DIES| Tyler| Polk| Taylor DIES| Fillmore| Pierce| ...
+--------------+--------------+---------+-------------+-------------+-----------+-----------+----------+----------+---------------------+-----------+-----------+-------------+-----------------+---------+--------+---------------+------------+----------+----...
NB. split into words
;;:&.><;._2[1!:1<'input.txt'
+----------+----------+-----+---------+---------+-------+-------+------+------+----+------+-----+-------+-------+---+-----+--------+----+-----+----+------+----+--------+------+--------+-------+-------+----+-------+-----+-----+-----+--------+----+------+---...
|Washington|Washington|Adams|Jefferson|Jefferson|Madison|Madison|Monroe|Monroe|John|Quincy|Adams|Jackson|Jackson|Van|Buren|Harrison|DIES|Tyler|Polk|Taylor|DIES|Fillmore|Pierce|Buchanan|Lincoln|Lincoln|DIES|Johnson|Grant|Grant|Hayes|Garfield|DIES|Arthur|Cle...
+----------+----------+-----+---------+---------+-------+-------+------+------+----+------+-----+-------+-------+---+-----+--------+----+-----+----+------+----+--------+------+--------+-------+-------+----+-------+-----+-----+-----+--------+----+------+---...
NB. count reptititions
|:~.(,.~[:<"0@(+/)=/~);;:&.><;._2[1!:1<'input.txt'
+----------+-----+---------+-------+------+----+------+-------+---+-----+--------+----+-----+----+------+--------+------+--------+-------+-------+-----+-----+--------+------+---------+--------+---------+----+------+-------+--------+------+---+------+------...
|2 |2 |2 |2 |2 |1 |1 |2 |1 |1 |2 |6 |1 |1 |1 |1 |1 |1 |2 |3 |2 |1 |1 |1 |2 |2 |2 |1 |2 |1 |1 |1 |4 |2 |2 ...
+----------+-----+---------+-------+------+----+------+-------+---+-----+--------+----+-----+----+------+--------+------+--------+-------+-------+-----+-----+--------+------+---------+--------+---------+----+------+-------+--------+------+---+------+------...
|Washington|Adams|Jefferson|Madison|Monroe|John|Quincy|Jackson|Van|Buren|Harrison|DIES|Tyler|Polk|Taylor|Fillmore|Pierce|Buchanan|Lincoln|Johnson|Grant|Hayes|Garfield|Arthur|Cleveland|McKinley|Roosevelt|Taft|Wilson|Harding|Coolidge|Hoover|FDR|Truman|Eisenh...
+----------+-----+---------+-------+------+----+------+-------+---+-----+--------+----+-----+----+------+--------+------+--------+-------+-------+-----+-----+--------+------+---------+--------+---------+----+------+-------+--------+------+---+------+------...
NB. sort
|:\:~~.(,.~[:<"0@(+/)=/~);;:&.><;._2[1!:1<'input.txt'
+----+---+-------+----+------+----------+------+---------+------+-----+------+--------+-------+-------+---------+-------+--------+-----+----------+-------+---------+-----+---+-----+------+----+------+----+------+-----+-------+----+------+-----+-------+----...
|6 |4 |3 |3 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |2 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 |1 ...
+----+---+-------+----+------+----------+------+---------+------+-----+------+--------+-------+-------+---------+-------+--------+-----+----------+-------+---------+-----+---+-----+------+----+------+----+------+-----+-------+----+------+-----+-------+----...
|DIES|FDR|Johnson|Bush|Wilson|Washington|Truman|Roosevelt|Reagan|Nixon|Monroe|McKinley|Madison|Lincoln|Jefferson|Jackson|Harrison|Grant|Eisenhower|Clinton|Cleveland|Adams|Van|Tyler|Taylor|Taft|Quincy|Polk|Pierce|Obama|Kennedy|John|Hoover|Hayes|Harding|Garf...
+----+---+-------+----+------+----------+------+---------+------+-----+------+--------+-------+-------+---------+-------+--------+-----+----------+-------+---------+-----+---+-----+------+----+------+----+------+-----+-------+----+------+-----+-------+----...
NB. take 10
10{.\:~~.(,.~[:<"0@(+/)=/~);;:&.><;._2[1!:1<'input.txt'
+-+----------+
|6|DIES |
+-+----------+
|4|FDR |
+-+----------+
|3|Johnson |
+-+----------+
|3|Bush |
+-+----------+
|2|Wilson |
+-+----------+
|2|Washington|
+-+----------+
|2|Truman |
+-+----------+
|2|Roosevelt |
+-+----------+
|2|Reagan |
+-+----------+
|2|Nixon |
+-+----------+
|
|
|
6
3
Perl:90 Perl:114 (包括Perl、命令行开关、单引号和文件名)
|
|
|
7
3
缺乏 AWK 令人不安。
75字。 如果你想让自己更难堪一点,你可以忘记xargs:
|
|
|
8
2
到目前为止,我最好用Ruby,166个字符:
我很惊讶还没有人发布一个疯狂的J解决方案。 |
|
|
9
2
这里是shell脚本的压缩版本,注意为了合理地解释输入数据(没有前导或尾随空格),原始文件中的第二个“tr”和“sed”命令不会更改数据(通过在适当的点插入“teout.n”并检查输出文件大小-相同来验证)。shell需要的空间比人类少——使用cat而不是输入I/O重定向会浪费空间。
它有50个字符,包括脚本末尾的换行符。 再观察两次(从其他人的回答中得出):
这可以再缩小7个字符(到43个,包括尾随新行):
使用
|
|
|
10
2
VIM 38 并为所有输入工作
|
|
|
11
2
Python 2.6, 一百零四 字符:
|
|
|
12
2
蟒蛇 3.1(88字符)
|
|
|
13
2
修订版 previous entry 它应该保存10个字符:
|
|
|
14
2
|
|
|
15
2
红宝石66
|
|
|
16
2
红宝石 115字符
|
|
|
17
2
Windows批处理文件这显然不是最小的解决方案,但我还是决定发布它,只是为了好玩。:)nb:批处理文件使用名为 $ 用于存储临时结果。 带注释的原始未压缩版本:
压缩和模糊版本, 三百一十七 字符:
这可以缩短为 二百五十八 如果echo已关闭且命令扩展和延迟变量扩展已打开,则为以下字符:
用途:
输出:
|
|
|
Akra · C从文本文件复制子字符串 8 年前 |
|
|
Manuel · 一串即使拆分有效,也会产生错误 8 年前 |
|
|
Pfalbaum · 从文本文件中删除BeautifulSoup标记 8 年前 |
|
|
probat · Python 3+如何编辑文本文件中的行 8 年前 |
|
|
kroneckersdelta · 用python对文件中的整数求和 8 年前 |
|
lefrost · 从文本文件中计算字数时出错 8 年前 |
|
lefrost · 对文本文件中的整数进行计数和求和时遇到问题 8 年前 |
|
|
somebrick · 如何有组织地写入文件? 8 年前 |