介绍
您可能知道并喜欢您的普通单位圈子。但是数学家疯了,因此他们把这个概念抽象到可以满足的任何程度x*x+y*y=1
。因为密码学家1也很奇怪,所以他们喜欢有限的场,有时还喜欢有限的环(虽然他们没有太多选择),所以让我们结合一下吧!
挑战
输入值
您喜欢的编码中大于1的正整数。我们称这个数字为n。
输出量
您将使用“ X”(大写拉丁字母X)和“”(空格)将单位圆的“图片”(由n个n个字符组成)以ASCII-Art模输入整数。允许使用尾随空格和换行符。
更多细节
您必须从左下到右上跨一个坐标系。只要一个点满足圆方程,就在该位置放置一个X,否则放置一个空格。
将点视为圆形边界一部分的条件是:
mod(x*x+y*y,n)==1
。
这里是坐标系的快速说明:
(0,4)(1,4)(2,4)(3,4)(4,4)
(0,3)(1,3)(2,3)(3,3)(4,3)
(0,2)(1,2)(2,2)(3,2)(4,2)
(0,1)(1,1)(2,1)(3,1)(4,1)
(0,0)(1,0)(2,0)(3,0)(4,0)
如果有帮助,您也可以反转任意轴的方向,但是示例均采用这种方向。
谁赢?
这是代码高尔夫球,因此以字节为单位的最短代码获胜!仅允许使用默认的I / O方法,并且禁止所有标准漏洞。
例子
输入2
X
X
输入3
X
X
XX
输入5
X
X
X X
输入7
X
X X
X X
X
X X
输入:11
X
XX
X X
X X
XX
X
X X
输入:42
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
X
X X
X X
X X
X X
X
X X X X
X X X X
X
X X
X X
X X
X X
X
X X X X
1 如果您在这里想知道,我建议您看看我的个人资料。