Questions tagged «math»

挑战涉及数学。还可以考虑使用更具体的标签:[数字] [数字理论] [算术] [组合] [图形理论] [几何] [抽象代数]。

9
希尔伯特·普里姆斯高尔夫
希尔伯特数被定义为形式的正整数4n + 1的n >= 0。希尔伯特的前几个数字是: 1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 57, 61, 65, 69, 73, 77, 81, 85, 89, 93, 97 希尔伯特数序列由OEIS序列A016813给出。 相关的数字序列,希尔伯特质数,被定义为H > 1不能被任何希尔伯特数(k例如)整除的希尔伯特数1 < k < H。希尔伯特素数的前几个是: 5, 9, 13, 17, 21, 29, 33, 37, 41, 49, 53, 57, …

17
产品超出独家和包容范围
受到@C @O'Bʀɪthis 这个问题的启发。 取自问题: 您的任务很简单:给定两个整数a和b,输出∏ [a,b]; 即a和b之间的范围的乘积。您可以采用任何合理格式的a和b,无论它们是函数的参数,列表输入,STDIN等。您可以以任何合理的格式输出,例如返回值(对于函数)或STDOUT。a将始终小于b。 注意,结尾可以是b的独占或包含。我不挑剔 ^ _ ^ 这项挑战的不同之处在于,我们将对范围类型保持谨慎。输入是以下形式的字符串[a,b],(a,b],[a,b),或(a,b)其中a []是一个包容边界和()是独占边界。给定明确的边界,请提供范围的乘积。同样,输入范围将始终包含至少1个数字,这意味着范围(3,4)无效且无需测试。 测试用例 [a,b) => result [2,5) => 24 [5,10) => 15120 [-4,3) => 0 [0,3) => 0 [-4,0) => 24 [a,b] => result [2,5] => 120 [5,10] => 151200 [-4,3] => 0 [0,3] => 0 [-4,-1] => 24 …
18 code-golf  math 

2
减少数学陈述
挑战 您是名为Coyote Beta的出色服务的所有者,该服务神奇地回答了用户通过互联网发送给它的数学问题。 但事实证明,带宽很昂贵。您有两种选择,要么创建“ 土狼Beta Pro”,要么找到解决该问题的方法。就在最近,有人在询问(x + 2)。客户端无法发送x+2,用户将看不到差异吗? 任务 您的任务是“最小化”数学表达式。给定一个输入表达式,您必须除去空格和括号,直到它给出相同输入的最小表示。关联运算的括号不需要保留。 这里给出的唯一运营商+,-,*,/,和^(幂),与标准的数学关联性和优先级。输入中给出的唯一空白将是实际的空格字符。 样本输入/输出 Input | Output ------------|-------------- (2+x) + 3 | 2+x+3 ((4+5))*x | (4+5)*x z^(x+42) | z^(x+42) x - ((y)+2) | x-(y+2) (z - y) - x | z-y-x x^(y^2) | x^y^2 x^2 / z | x^2/z - (x + …

4
疯狂的图书管理员的素数算术序列
好吧,图书馆员发现您使用排序算法欺骗了您的工作,所以现在您将受到惩罚。您被命令创建一些代码,以便图书馆员可以打动他们单恋的对象,即数学老师。所以,这就是什么“其他职责分配”的意思... 每个人都熟悉以10为底的自然数序列N: 0、1、2、3、4、5、6 ... 从这一点,我们可以生成素数序列,我们称之为P,使得每一个元素P在刚好两个除数ñ,即1与自身。该顺序是: 2、3、5、7、11、13 ... 好的,到目前为止很常规。 一个漂亮的函数的图书管理员思想F(X,Y) ,需要一个数x从Ñ,条件0 <= x <= 9,以及一些y从Ñ,并插入x到y在每个位置的十进制扩展(即,在前面加上,插入或附加x到y),然后返回排序后的新数字集。 例如,F(6,127)将导致 1267、1276、1627、6127 不过,那仍然有点无聊。图书管理员希望通过指定一个新函数(升序排列)来使事情更加有趣z -> {p : p in P and F(z,p) subset of P}。 例如,z(7)将是 3,19,97,433,487,541,... 因为37和73都是素数,719 179并且197都是素数,依此类推。 请注意,z(2)为空,因为没有2追加的素数永远不会是素数。对于{0,4,5,6,8}同样。 您的任务是编写代码,为给定x生成并输出序列z(x)中的前100个数字。 输入值 一个整数X,使得0 <= x <= 9。输入可以通过函数参数STDIN或等效参数进行。 输出量 由您选择的前100个数字组成的序列,应为STDOUT或等效的序列,以使该序列如上所述满足z(x)。如果z(x)为空(如{0,2,4,5,6,8}的情况),Empty Set则应改为输出单词。 限制条件 这是代码高尔夫球,因为您需要将其转录为索引卡,以便图书馆员向数学老师展示,并且您的手容易抽筋。 适用标准漏洞限制。图书管理员不容忍作弊者。 参考序列 x = 1:A069246 …

8
经典证明谬误[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Code Golf Stack Exchange 的主题。 3年前关闭。 的背景 因此,我们都知道像这样的经典证明: A = B A²= AB A² -称b²= AB -称b² (AB)(A + B)= B(AB) (A + B)= B B + B = 2B = B 2 = 1(呵呵!) 中当然,错误是您不能被0除。由于a = b,a-b = 0,所以存在被0除的隐藏除法。 挑战 您必须复制此证明。首先,声明两个相等的整数a和b(不管它们叫什么)。然后将aMod和bMod声明为a和b的可修改版本,并分别最初等于a和b。您必须将它们都乘以a,然后从两者中减去b * b。然后必须除以a-b,然后除以b(或a)才能得到。然后,打印出aMod和bMod之间带有等号。 人手不足 当然,由于您声明a和b相等,所以a-b = 0,然后除以0会导致错误。因此,您必须创造性地伪造它。另外,由于您要复制证明,因此打印时aMod和bMod上所有操作的结果均不得相等。他们不必精确地等于2和1,只要两个数字不相等即可。 …

6
电子配置
电子配置 您的任务是接受元素的原子序数作为输入,并输出其电子构型(例如2,8,8,2钙)。 输入值 原子序数从1到118。您可以假设输入有效。原子不带电(它的电子与质子一样多)。您可能不希望输入存储在变量中,因此必须编写完整的程序。 输出量 每个非空电子壳中的电子数。我会对输出格式很宽容;以下所有条件都是可以接受的,即您可以使用任何标点符号或空格来分隔数字,并且可以使用任何类型的方括号。请指定使用哪个。 2,8,8,2 2.8.8.2 2, 8, 8, 2, [2,8,8,2] 2 8 8 2 ([2 [8]] [8] 2) 电子如何工作 在原子中,电子有序进入“壳”,即能级。每个壳都有一定的容量,即它能够容纳的最大电子数。贝壳从内向外填充,但不均匀。根据此消息来源,您的任务是确定给定原子序数,每个壳中有多少个电子。 直至并包括钙(原子序数为20),壳均匀地填充。内壳首先填充至容量2,第二至8,然后第三至8,最后至2。钙的电子构型为2,8,8,2。 补钙后,事情变得复杂了。进一步的电子进入第三个壳,而不是最后一个。更糟的是,钒为(23)2,8,11,2,而铬(24)为2,8,13,1和锰(25)为2,8,13,2。 但是,存在一些一致的模式:稀有气体及其之前的七个元素将始终使外壳中的电子数量从1增加到8。例如: 金(79): 2,8,18,32,18,1 汞(80): 2,8,18,32,18,2 ... (85): 2,8,18,32,18,7 (86): 2,8,18,32,18,8 规则 禁止出现标准漏洞。 允许在此挑战之前存在的图书馆。 禁止任何专门处理原子,分子或化学的内置或库功能。 以字节为单位的最低代码长度为准。 在链接的源中,元素103-118的配置如所预测的那样用(?)标记,并且元素太不稳定而无法检查。对于这个挑战,假设它们是正确的。 您可以对部分或全部数据进行硬编码。 [新规则]如果您在文件中使用控制字符,则请提供文件的base64或xxd转储(许多答案似乎正在这样做) 获胜者:丹尼斯的CJam答案为80字节!

4
计算实际数字
定义 正整数n是一个实际数字(OEIS序列A005153),前提是所有较小的正整数都可以表示为的不同除数之和n。 例如,18是一个实际数字:其除数为1、2、3、6、9和18,小于18的其他正整数可以形成如下: 4 = 1 + 3 5 = 2 + 3 7 = 1 + 6 8 = 2 + 6 10 = 1 + 9 11 = 2 + 9 12 = 3 + 9 = 1 + 2 + 9 = 1 + 2 + 3 …
18 code-golf  sequence  number-theory  code-golf  code-challenge  sorting  c  code-golf  restricted-source  code-golf  natural-language  code-golf  tree-traversal  file-system  popularity-contest  pi  polyglot  code-golf  game  sliding-puzzle  code-golf  game  minesweeper  code-challenge  ascii-art  code-challenge  popularity-contest  graphical-output  code-challenge  popularity-contest  hello-world  underhanded  obfuscation  code-golf  code-golf  function  code-golf  code-golf  code-golf  popularity-contest  rosetta-stone  code-golf  primes  code-golf  restricted-source  popularity-contest  number  sequence  code-golf  restricted-source  popularity-contest  graphical-output  code-golf  popularity-contest  code-golf  primes  code-golf  game  code-golf  math  popularity-contest  popularity-contest  code-generation  popularity-contest  code-bowling  code-golf  popularity-contest  underhanded  code-golf  metagolf 

4
打造小型且平衡的手机
您将获得许多权重,而您的任务是使用这些权重构建一个小型的平衡手机。 输入是1到9之间(包括1和9)的整数权重列表。可能有重复。 输出是手机挂起后会保持平衡的ascii图片。最好通过示例显示: 输入 3 8 9 7 5 可能的输出 | +-----+---------+ | | +--+-+ +----+------+ | | | | 8 ++--+ 7 5 | | 9 3 您必须使用显示的ascii字符。水平和垂直段可以是任何长度。移动设备的任何部分都不能(水平或垂直)触摸移动设备的另一个未连接部分。必须将所有重物悬挂在长度至少为1的垂直段上,并且必须有一个垂直段,整个手机都悬挂在该垂直段上。 移动的大小是的总数+,-和|构建它所需的字符。较小的尺寸更好。 您可以根据需要在一个网段上放置任意数量的连接。例如: 输入 2 3 3 5 3 9 可能的输出 | +---+---+-----------+ | | | +--+-+ 5 9 | | | …

19
厄米矩阵?
请注意,此挑战不需要处理或理解复数。 给定一个非空方阵,其中每个元素都是一个由两个元素组成的(Re,Im)整数列表,请确定(给出任何真伪值或任何两个一致值)这是否代表一个埃尔米特矩阵。 注意,输入是一个3D整数数组。不是复数的2D数组。如果您的语言不能直接采用3D数组,则可以采用平面列表(如果有帮助,可以使用n×n或n×n×2形状)。 如果矩阵等于其自身的共轭转置,则为Hermitian。换句话说,如果将它跨过其左上角到右下角的对角线,并取反所有两个元素的叶列表的第二个元素,则它与输入矩阵相同。请注意,翻转和否定的顺序无关紧要,因此您可以先取反,然后再取反。 步行示例 本示例使用带有多余空白的JSON来简化阅读: [[ [2, 0] , [2, 1] , [4, 0] ], [ [2,-1] , [3, 0] , [0, 1] ], [ [4, 0] , [0,-1] , [1, 0] ]] 转置(跨NW-SE对角线翻转): [[ [2, 0] , [2,-1] , [4, 0] ], [ [2, 1] , [3, 0] …

15
在任意(受限制的)无穷集与无序对之间设计一个交换式内射函数
相关,但这只需要正整数,而不必是可交换的 Cantor配对功能在此Wikipedia文章中进行了描述。本质上,这是一种操作,当将其应用于两个值X和Y时,只要给出结果,就可以获得原始值X和Y。 您的任务是设计两个功能:一个执行X, Y -> Z,另一个执行Z -> X, Y。X, Y -> Z要注意的是:必须是可交换的。这意味着Z -> X, Y将无法确定输入是X, Y还是Y, X。 这个挑战的正式定义是: 选择一个可数的无穷大数字S。 设计执行以下任务的两个功能: 给定S中的无序值对,则返回S中的值 给定初始函数的返回值,返回无序的一对值,当通过第一个函数时,该值对将得出输入整数。如果输入不是第一个函数的返回值,则我不关心此反函数的行为。 要求 运行之间的结果应相同。 {a, a} 是无序对 注意:如果您提供证据,您的答案更有可能获得我的支持,但是当我获得答案时,我会进行测试,并在相当确定的情况下对其进行支持。

6
辅助因子矩阵
辅因子矩阵是Adjugate矩阵的转置。该矩阵的元素是原始矩阵的辅因子。 辅因子(即第i行和第j列的辅因子矩阵的元素)是通过从原始矩阵中删除第i列和第j列乘以(-1)^(i + j)形成的子矩阵的行列式。 例如,对于矩阵 第1行和第2列的辅助因子矩阵的元素为: 您可以在此处找到有关矩阵行列式是什么以及如何计算它们的信息。 挑战 您的目标是输出输入矩阵的辅因子矩阵。 注意:允许使用用于评估辅因子矩阵,辅助矩阵,行列式或类似物的内置函数。 输入值 可以以STDIN最适合您使用的语言的方式或以任何方式将矩阵作为命令行参数,函数参数输入。 矩阵将被格式化为列表列表,每个子列表对应于一行,其中包含从左到右排序的因子。行在列表中从上到下排序。 例如矩阵 a b c d 将以表示[[a,b],[c,d]]。 如果适合您的语言并且明智(例如((a;b);(c;d))),则可以用其他方式替换方括号和逗号。 矩阵将仅包含整数(可以为负数)。 矩阵将始终为正方形(即行和列的数量相同)。 您可以假设输入将始终是正确的(即,没有格式问题,除整数外没有其他问题,没有空矩阵)。 输出量 所得的辅助因子矩阵可以输出到 STDOUT函数,从函数返回,写入文件或任何自然适合您使用的语言的东西。 辅助因子矩阵的格式必须与输入矩阵的给出完全相同,例如[[d,-c],[-b,a]]。如果读取字符串,则必须返回/输出一个字符串,在该字符串中,矩阵的格式应与输入中的格式完全相同。如果您使用诸如列表列表之类的内容作为输入,那么您也必须返回列表列表。 测试用例 输入: [[1]] 输出: [[1]] 输入: [[1,2],[3,4]] 输出: [[4,-3],[-2,1]] 输入: [[-3,2,-5],[-1,0,-2],[3,-4,1]] 输出: [[-8,-5,4],[18,12,-6],[-4,-1,2]] 输入: [[3,-2,7,5,0],[1,-1,42,12,-10],[7,7,7,7,7],[1,2,3,4,5],[-3,14,-1,5,-9]] 输出: [[9044,-13580,-9709,23982,-9737],[-1981,1330,3689,-3444,406],[14727,7113,2715,-9792,414],[-28448,-2674,-707,16989,14840],[-2149,2569,-2380,5649,-3689]] 计分 这是代码高尔夫球,因此最短的答案以字节为单位。

3
打高尔夫球的数字大于装载机的数字
作为输出量超过Graham数和Golf数大于TREE(3)的最短终止程序的后续程序,我提出了一个新的挑战。 装入程序的数量非常大,很难解释(因为它本身是具有灵活目标的代码高尔夫练习的结果)。有一个定义和解释在这里,但自我封闭的目的,我将试图在这个帖子后面解释它。 Ralph Loader所使用的算法可产生有史以来最多的(可计算的)算法之一!实际上,Loader的号码是Googology Wiki上最大的“可计算”号码。(“可计算”数字是指根据计算定义的数字。)这意味着,如果答案以有趣的方式生成的数字大于Loader的数字(即不只是Loader的数字+1),您可以在谷歌历史!话虽如此,产生类似Loader的number + 1之类的程序绝对是这个问题的有效答案和竞争者。只是不要期望任何名气。 您的工作是创建一个终止程序,该程序产生的数字大于 Loader的数字。这是代码高尔夫球,所以最短的程序会获胜! 您不允许输入。 您的程序最终必须确定性终止,但是您可以假定计算机具有无限的内存。 您可能会假设您的语言的数字类型可以包含任何有限值,但是需要解释一下它在您的语言中的确切工作方式(例如:浮点数具有无限精度吗?) 不允许将无穷大作为输出。 数字类型的下溢引发异常。它不会环绕。 您需要提供一个解释,说明为什么您的电话号码如此之大以及代码的版本不正确,以检查您的解决方案是否有效(因为没有计算机具有足够的内存来存储Loader的电话号码)。 因此,这里是装载机编号的说明。有关更精确的详细信息,请参见http://googology.wikia.com/wiki/Loader%27s_number及其链接。特别是,它包含一个程序,该程序可以准确地生成Loader的编号(根据定义)。 该结构的微积分本质上是一种编程语言,它的特殊性质。 首先,每个句法有效的程序都会终止。没有无限循环。这将非常有用,因为这意味着如果我们运行任意的构造程序演算,我们的程序将不会卡住。问题在于,这意味着构造的演算尚未完成图灵的计算。 其次,在非图灵完整语言中,它是最强大的语言之一。本质上,如果您可以证明图灵机在每个输入上都将停止,则可以在构造演算中模拟该功能的函数。(这并不能完成巡视,因为您无法证明正在停止的巡回机器已经停止。) 装入程序的编号本质上是用于构造演算的忙碌的海狸编号,由于所有coc程序均终止,因此可以计算该编号。 特别是,loader.c定义了一个名为的函数D。大约D(x)在所有小于的位串上进行迭代x,将它们解释为coc程序,运行语法上有效的程序,并将结果(也将是位串)连接起来。它返回此串联。 加载程序的编号为D(D(D(D(D(99)))))。 来自Googolology Wiki的更具可读性的代码副本 int r, a; P(y,x){return y- ~y<<x;} Z(x){return r = x % 2 ? 0 : 1 + Z (x / 2 );} L(x){return x/2 >> Z(x);} …

8
除数除数
nnn(k1,k2,...,km)(k1,k2,...,km)(k_1,k_2,...,k_m)ki⩾2ki⩾2k_i \geqslant 2这样和 这里手段是一个多,说: “一个整除b”。如果所有条目必须至少为。对于k1⋅k2⋅...⋅km=nk1⋅k2⋅...⋅km=nk_1 \cdot k_2 \cdot ... \cdot k_m = nk1|k2 , k2|k3 , … , km−1|km.k1|k2 , k2|k3 , … , km−1|km.k_1 | k_2 \text{ , } k_2 | k_3 \text{ , } \ldots \text{ , }k_{m-1}|k_m.a|ba|ba|bbbbaaan>1n>1n>1kikik_i222n=1n=1n=1 我们没有这样的因素,因此我们得到一个空的元组。 如果您想知道这是从哪里来的:这种分解在数论中被称为不变因子分解,它被用于有限生成的Abelian组的分类中。 挑战 鉴于nnn输出所有这样的元组(k1个,ķ2,。。。,ķ米)(ķ1个,ķ2,。。。,ķ米)(k_1,k_2,...,k_m)对于给定的ññn正好一次,在任何命令你等。允许使用标准序列输出格式。 例子 1: () (empty tuple) 2: …

23
枚举排列
给定一些正整数生成对象的所有排列。nñnnñn 细节 排列是没有固定点的排列。(这意味着在每个排列编号中,i一世i都不能位于第i一世i个条目中)。 输出应包含数字(1,2,…,n)(1个,2,…,ñ)(1,2,\ldots,n)(或(0,1,2,…,n−1)(0,1个,2,…,ñ-1个)(0,1,2,\ldots,n-1))的排列。 您也可以始终打印(n,n−1,…,1)(ñ,ñ-1个,…,1个)(n,n-1,\ldots,1)(或分别(n−1,n−2,…,1,0)(ñ-1个,ñ-2,…,1个,0)(n-1,n-2,\ldots,1,0))的排列,但必须指定。 输出必须是确定性的,也就是说,每当调用某个给定nñn作为输入的程序时,输出都应该是相同的(这包括排列顺序必须保持相同),并且完整的输出必须在每次有限的时间(以概率1这样做是不够的)。 您可以假设n⩾2ñ⩾2 n \geqslant 2 对于某些给定的您可以生成所有排列,也可以选择另一个整数作为索引并打印第个排列(按您选择的顺序)。nñnkķkkķk 例子 请注意,排列顺序不必与此处列出的顺序相同: n=2: (2,1) n=3: (2,3,1),(3,1,2) n=4: (2,1,4,3),(2,3,4,1),(2,4,1,3), (3,1,4,2),(3,4,1,2),(3,4,2,1), (4,1,2,3),(4,3,1,2),(4,3,2,1) OEIS A000166记录了排列的次数。

28
给定一个字符串,计算它对应的列数
在Excel中,列的范围为A-Z, AA,AB,AZ,BA,..,BZ依此类推。它们实际上每个代表数字,而是编码为字母字符串。 在此挑战中,将为您提供一串字母,并且您必须计算其对应的列。 一些测试: “ A”返回1(表示它是第一列) 'B'返回2 'Z'返回26 'AA'返回27 'AB'返回28 'AZ'返回52 'ZZ'返回702 'AAA'返回703 您可以假设只给出大写字母。 最短的字节获胜。 祝好运!
17 code-golf  math 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.