首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多边形(非常量) OEIS!

多边形(非常量) OEIS!
EN

Code Golf用户
提问于 2017-08-14 18:27:36
回答 4查看 1.4K关注 0票数 24

免责声明:这很大程度上是受“多利格洛的OEIS!”的启发,但修复了导致关闭的问题(参见输出部分),并重新发布了不使答案无效的内容。

Introduction

我们都知道并喜欢在线整数序列百科全书(OEIS).那么,如果我们制作了一个离线版本的有趣的序列呢?嗯,那会有点太容易了,不是吗,你将如何选择一个序列与我们的标准界面!?不是的。我们需要一个更简单的解决办法。一种多角体!

输入

您的输入将是一个非负整数n.

输出

您的输出要么是

  • OEIS序列或的n-th条目
  • OEIS序列的第一个n条目。

您可以根据自己的喜好,选择基于1或0的索引。

为了不使这个问题成为重复的通用整数打印机常数序列是被禁止的。这也应增加提交材料的难度,避免“无聊”的解决办法;)

如果存在两个不相等的序列成员,则序列是非常数的.

嗯,那么挑战在哪里?

您必须对上面的功能进行多标记。也就是说,如果您支持A、B和C语言,那么它们都必须实现不同的OEIS序列。顺序的选择是不受限制的,只是对于所有语言你需要不同的序列。

也就是说,如果您以A语言运行所提供的程序,则将生成序列X,如果您以B语言运行所提供的程序,则将生成序列Y(使用X!=Y),如果您以C语言运行所提供的程序,则将生成序列Z(使用X!=Z & Y!=Z)。

谁赢了?

具有最多序列/语言对的答案获胜。第一个平局断路器是代码大小(以字节为单位),更低的更好。第二个平局是提交时间与更早的更好。

最后的话/规则吗?

  • 您必须声明哪种语言将生成哪一序列。
  • 适用标准I/O规则.
  • 如果语言之间使用不同的编码,那么两个程序都必须使用相同的字节序列。
  • 语言(Python2/3)修订版确实是不同的语言。一种语言的不同实现(例如浏览器、JS和Node.js)也算作不同的语言。
  • 适用标准漏洞。
EN

回答 4

Code Golf用户

发布于 2017-08-14 20:22:10

3语言(1字节)- 皮斯 (A001477)、马蒂尔 (A000027)、布林格 (A000217)

代码语言:javascript
复制
Q

怎么做?

Q做了以下工作:

  • 在MATL中,它的意思是+ 1,因此它基本上计算为input + 1
  • 在Pyth中,它意味着输入,所以它只输出输入。
  • 在Braingolf中,它是三角数的内置体。

Mini-polyglot

皮斯可以被以下任何一种语言所取代:GolfScript派克布氏对数脑Flak

票数 17
EN

Code Golf用户

发布于 2017-08-14 19:42:44

10种语言,122个字节

代码语言:javascript
复制
#|A=1:0;~@}{\,[.,];oi
#coding:utf-8
print (0 and gets.to_i-1 or int(input())**(2+(1/2>0)));quit()#⎚I±N»
# x
#x%:+.

我肯定还能再加一堆。1-索引,除非另有规定。

请注意,我可能不是最新的TIO链接,当我确定较新的变化不影响旧的程序-你可以测试他们,如果你想,但复制10+新的TIO链接,每次我做一个改变后,变得累人。我会每5次更新一次。

cQuents v0,A000007

相关代码:#|A=1:0;

#|A捕获输入,并在那里查找Python。=1表示第一项为1:0表示其余为0,输出给定输入nn第四项。cQuents v0有一个奇怪的bug/特性,当读取意外但有效的令牌(如; )时,就会导致解析结束。

在网上试试!

PingPong,A001478

相关代码:#|A=1:0;~@

输出通过出口代码。0-索引。

#跳过下一个字符。=在这里什么都不做。1推送1:1打印到STDOUT。00)什么也不做。;推送输入,~弹出并推动-n-1@终止。退出代码是堆栈的顶部。

在网上试试!

axo,A001477

相关代码:}{\

0-索引。}从STDIN中读取和推送一个整数(由于某种原因需要尾随换行符),{打印堆栈的顶部,\结束程序。我不知道前面的字符是做什么的,但在这种情况下没有什么关系。

在网上试试!

brainfuck,A000027

相关代码:,[.,]

来自esolangs.org的简单cat程序。输出输入。

在网上试试!

><>,A000030

相关代码:# . ;oi

#向右镜像和包装,将其指向读取io;,后者输出输入的第一个字符。0-索引。

在网上试试!

Ruby,A023443

相关代码:print (0 and gets.to_i-1 . )

0-索引。在Ruby中打印输入减1. 0是真实的,但是在Python中则是falsey。

在网上试试!

Python 3,A000578

相关代码:print (0 and gets.to_i-1 or int(input())**(2+(1/2>0)));quit()

从超中微子最初的文章中被撕毁,但这是一个非常有名的多义词。quit()结束程序。

在网上试试!

Python 2,A000290

相关守则:

代码语言:javascript
复制
#coding:utf-8
print (0 and gets.to_i-1 or int(input())**(2+(1/2>0)));quit()

#coding:utf-8是木炭材料工作的必要条件。还剽窃了超中微子的原始帖子。quit()结束程序。

在网上试试!

木炭,A001489

相关代码:⎚I±N»

0-索引。清除控制台(按原样打印ASCII ),I±N打印输入的负值。»是一个解析错误,并终止程序。

感谢ASCII-只是在聊天方面的帮助。

在网上试试!

红衣主教,A020725

相关守则:

代码语言:javascript
复制
 x
x%:+.

将1添加到输入,并压缩所有其他指针。

在网上试试!

票数 15
EN

Code Golf用户

发布于 2017-08-14 19:18:10

3语言:质子,A000583;Python3,A000578;Python2,A000290

质子,49字节

代码语言:javascript
复制
print(int(input())**(2+(1/2>0)+((''',''')!=',')))

在网上试试!

Python 3,49字节

代码语言:javascript
复制
print(int(input())**(2+(1/2>0)+((''',''')!=',')))

在网上试试!

Python 2,49字节

代码语言:javascript
复制
print(int(input())**(2+(1/2>0)+((''',''')!=',')))

在网上试试!

解释

质子没有'''...'''字符串,所以(''',''')变成了('' ',' ''),这在某种程度上不会引起问题。它评估为'',使(''',''')!=','评估为True

Python确实有这些字符串,所以(''',''')只是',',所以(''',''')!=','的计算结果是False

Python2对整数使用地板除法,因此1/2>0在Python2中为false,在Python3中为true。

票数 8
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/139036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档