30
回答链斐波那契
(灵感来自ASCII的95个字符... 95电影行情) 挑战 给定输入n,输出nth 斐波那契数。您可以使用0或1建立索引,请在您的提交中注明。很简单,是吗?要注意的是,您必须采用上一个答案的字符集,从中删除两个字符,然后添加一个单独的字符。单独的字符必须 不是来自前一个答案的字符集 来自(可打印的ASCII,空格,换行符,水平制表符)的集合 因而你总字符集的大小将正好一个比前一个上回答的更小的集合。 最初的答案 第一个提交必须包含一个子集(所有可打印的ASCII,空格,换行符和水平制表符),并且删除了两个字符。此后的每个提交都必须将其答案限制为这种原始的纯ASCII格式(这意味着您不能添加Unicode或扩展ASCII字符……很抱歉,APL等人,Jelly)。 实例和说明 假设第一个答案在C中,并且包含(几乎所有可打印的ASCII,换行符和水平制表符),并从其字符集中省略%和^。然后,第二个提交必须从上一个字符集(几乎所有可打印的ASCII,换行符和水平制表符)中删除两个字符,并添加%或^。也许这是一个单行的PowerShell答案,而忽略了换行符。等等。 如果上一个答案print(){}!*+的字符集为12个字符,则您提交的内容可能有print(){}!10个字符和一个附加字符,print(){!+10个字符和一个附加字符,依此类推。 如果以前的答案有print(){}!*+其字符集(12个字符),提交的内容可能不具有print()和&(8个字符)作为它的字符集,因为12 - 8 > 1。 如果以前的答案有print(){}!*+其字符集(12个字符),提交的内容可能不会有print(){}!(10个字符),再加上额外的字符*作为其字符集,因为即使那是11个字符,则*包括在上一组。 并非您的字符集中的每个字符都必须对提交内容有所帮助。例如,如果先前的答案print(){}!*+以其字符集为准,并且您的语言具有内置功能,!可以计算斐波那契数列并#启动注释,则您的提交可能!#print(){}仍然有效。 您可以多次使用字符集中的同一字符。例如,假设您的字符集为!*#_,您的答案可能是!!!**#**#_!!并且将是可接受的。 除了您的代码(并且解释也不错!)之外,还请明确列出您的字符集,以使以后的提交更加容易。 获奖 挑战的获胜者将是发布第二个最新提交的人(即不是最后发布的人,因为他们打破了链条)。 最终规则 通常的答案链规则适用: 同一个人不能连续发布两次 如果一个答案被认为是无效的(例如,它使用了禁止字符或计算不正确),则需要将其删除(以及所有后续的答案也都将其链接) 张贴“同时”的两个用户将不得不保留较早的提交 同一语言不能连续发布两次。为了该规则的目的,相同家族的语言(例如,Python 2和Python 3)被视为“相同语言”。 最后的事情: 如果按“最旧的”排序,则此帖子效果最佳,以便正确排列答案。 Kyle Gullion在这里用Python构造了一个代码检查器,以验证您是否丢失或使用错误的字符。