注意:这个问题最初让人们用更短的程序来写评论,而不是新的答案。这一点已经被改变了,这样那些程序较短的人也能获得声誉。希望这不会变得难以控制..。
从在线整数序列百科全书中选择一个序列,并编写一个完整的程序或函数,该程序或函数以下列方式之一计算序列:
您将尝试选择具有最长、最短、可能的程序/函数的序列来计算该序列(如果这令人困惑,请参见下面的示例)。你必须包括你在回答中使用的顺序。
尽量使你的程序/功能尽可能短。如果有人能找到一个较短的程序来计算相同的序列,他们应该添加另一个答案与他们的较短的程序。如果你发现一个比别人更短的程序,你应该参考他们在你的答案。对于所有的答案,一个在网上试试链接将是很好的。如果其他人写的程序比你的短,如果你在你的答案中加入一个链接,那就太好了。
当然,任何一个程序都不应该以任何方式访问internet或OEIS,理论上它们都应该在任意大的输入上工作(您可以忽略整数类型的最大大小)。
以字节为单位的最长最短程序的序列是赢家。
例如,
假设我选择了序列A000027,正整数,然后我提交了这个答案:
x = "o"
while True:
print len(x)
x += "o"显然,这不是一个计算序列的非常短的程序,因此其他人(让我们称之为foo)可能会出现并添加以下答案:
id(id是恒等函数,所以它只会返回传递给它的任何内容,因为nth正整数就是n,所以它会计算这个序列)。
然后,发布Python解决方案的人应该编辑他们的答案:
被foo的回答(链接)所取代。
x = "o"
while True:
print len(x)
x += "o"只要没有其他人找到一个更短的程序,这个序列就会得到2的分数(因为id是两个字节),而得分最高的序列就会获胜。
https://codegolf.stackexchange.com/questions/188230
复制相似问题