这里的任务是编写一个程序,它接受一个自然数,n,并生成一个n序列的第四项。该序列应该有一个A形式的标识符,后面跟着6位数字。现在,当您获取源代码并反转其字节的顺序以生成一个新程序时,该程序还应该实现一个OEIS序列。新的序列应该由一个A来标识,后面跟上次相同的6个数字,但顺序相反(包括前导零)。
现在,为了防止事情变得琐碎,OEIS标识号和您的程序都不能是回文。也就是说,序列和程序应该是不同的。您不能选择其反向不存在或为空的序列。
对于每个序列,您可以选择使用0或1索引。他们不必使用相同的索引。由于一些OEIS序列有一个有限的域,所以您只需要输出序列域的正确数字。您所需的行为在域外是未定义的(您可以输出0、崩溃、订购比萨饼等)。
这是密码-高尔夫,所以答案将以字节表示,而更少的字节会更好。
发布于 2019-07-11 07:48:05
f=lambda n,k=0:k if`n`in`2**k`else f(n,k+1)#]0[`n`:n adbmal定义函数f,返回A030000 (最小非负数k,使2^k的十进制展开包含字符串n)的第n项,0-索引。
lambda n:`n`[0]#)1+k,n(f esle`k**2`ni`n`fi k:0=k,n adbmal=f一个匿名函数,返回A000030 (n的初始数字)的第n项,0-索引。
较短的版本,它将字符串作为输入(对于两个序列),并且都是0-索引:
f=lambda n,k=0:`k`*(n in`2**k`)or f(n,k+1)#]0[n:n adbmallambda n:n[0]#)1+k,n(f ro)`k**2`ni n(*`k`:0=k,n adbmal=fhttps://codegolf.stackexchange.com/questions/188147
复制相似问题