Questions tagged «math»

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

15
确定您的源代码中的数字是否为2017易写的无素数
在我一直挑战的所有年份中,2017年是第一年。因此,问题将是关于质数及其性质。 您的任务是生成一个将任意大的正整数作为输入的程序或函数,并输出或返回该数字是否为2017易碎的数字,即该数字中最大的质数是否为2017或更小。 一些示例输入及其输出: 1 (has no prime factors) true 2 (= 2) true 80 (= 2 x 2 x 2 x 2 x 5) true 2017 (= 2017) true 2019 (= 3 x 673) true 2027 (= 2027) false 11111 (= 41 x 271) true 45183 (= 3 x 15061) …

30
可以用(3 ^ x)-1格式写这个数字吗?
挑战: 创建一个接受正整数的程序,并检查它是否可以(3 ^ x)-1的形式编写,其中X是另一个正整数。 如果可以,输出X 如果不能,则输出-1或伪造的语句。 输入/输出示例 输入: 2 可以写成(3 ^ 1)-1,所以我们输出x就是1 输出: 1 输入: 26 26可以写成(3 ^ 3)-1,所以我们输出x(3) 输出: 3 输入: 1024 1024不能以​​(3 ^ x)-1的形式写入,因此我们输出-1 输出: -1 这是代码高尔夫球,因此最少的字节数获胜 相关OEIS:A024023

30
天哪,吉萨高尔夫!
“吉萨数”(俗称“ 蒂米数”)是指数字代表金字塔的任何数字(A134810)。例如,“ 12321”是一个吉萨数字,因为它可以像这样可视化: 3 2 2 1 1 但是,“ 123321”之类的字符不是吉萨币,因为金字塔的顶部有两位数字 33 2 2 1 1 换句话说,如果满足以下所有条件,则数字为吉萨数: 它的位数是奇数,中间的数字是最大的 它是回文的(相同的向前或向后读取),并且 数字的前半部分严格增加一个。(由于必须是回文,这意味着数字的后半部分必须严格减少一位) 您必须编写一个采用正整数作为输入的完整程序或函数,并确定它是否为吉萨数。您可以将输入作为字符串或数字。如果它是吉萨数,则输出真实值。否则,将产生虚假的值。 共有45个吉萨数字,因此这些输入中的任何一个都应产生真实值: 1 2 3 4 5 6 7 8 9 121 232 343 454 565 676 787 898 12321 23432 34543 45654 56765 67876 78987 1234321 2345432 3456543 4567654 5678765 …

30
水稻和象棋问题
一位印度传奇人物讲述了所谓的国际象棋发明者的故事,他用他的棋子给印度皇帝留下了深刻的印象,以至于他得到的任何要求都会得到回报。 该男子说他想用大米付钱。他想在棋盘的第一个正方形上放一粒米,第二个想要两个,第三个四个,第四个八个,依此类推,直到第64个正方形。 皇帝惊讶于这个人要求这么小的报酬,但是随着他的数学家开始数数,他最终失去了他的一个省。 任务 给定假设的棋盘的边长(默认棋盘的边长为8)和正方形之间的乘数(图例中为2),计算皇帝必须付给该人的米粒数。 笔记 边长将始终为正整数。乘数可以改为任何有理数。 如果您选择的语言不能显示非常大的数字,则可以,只要您的程序可以正确处理较小的输入即可。 同样,如果您选择的语言舍入较大的值(带有指数符号),则这些值近似正确也是可以的。 测试用例 Input (side length, multiplier) => Output 8, 2 => 18446744073709551615 3, 6 => 2015539 7, 1.5 => 850161998.2854 5, -3 => 211822152361 256, 1 => 65536 2, 2 => 15 2, -2 => -5 请注意,显式公式 result = (multiplier ^ (side …
41 code-golf  math 

30
波兰语反符号
您必须评估以反向波兰表示法编写的字符串并输出结果。 程序必须接受输入并返回输出。对于不具有接收输入/输出功能的编程语言,可以采用readLine / print之类的功能。 您不得在程序中使用任何类型的“评估”。 数字和运算符由一个或多个空格分隔。 您必须至少支持+,-,*和/运算符。 您需要为负数和浮点数添加支持(例如,-4与并不相同0 4 -)。 您可以假设输入有效,并遵循上述规则 测试用例 输入: -4 5 + 输出: 1 输入: 5 2 / 输出: 2.5 输入: 5 2.5 / 输出: 2 输入: 5 1 2 + 4 * 3 - + 输出: 14 输入: 4 2 5 * + 1 3 …
41 code-golf  math 

30
最低限度的移动
受堆栈溢出问题的启发。这里的标题完全是我的错。 挑战 给定一个包含至少两个条目的正整数列表,请将每个数字替换为除自身以外的所有条目中的最小值。 测试用例 [4 3 2 5] -> [2 2 3 2] [4 2 2 5] -> [2 2 2 2] [6 3 5 5 8] -> [3 5 3 3 3] [7 1] -> [1 7] [9 9] -> [9 9] [9 8 9] -> [8 9 8] …

30
大量的整数!
一个丰富的数字是任何数,其中其应有的除数的总和比原来的数量。例如,12的适当除数是: 1, 2, 3, 4, 6 并将这些结果相加为16。由于16大于12,因此12丰富。请注意,这并没有包括“完美号”,例如数字是等于其适当除数的总和,如6和28。 今天的任务是编写确定数字是否丰富的程序或函数。您的程序应采用单个整数作为输入,并根据其是否丰富输出真/假值。您可以假设输入将始终有效且大于0,因此对于错误的输入,可以使用未定义的行为。 您可以采用任何合理的格式输入和输出,例如STDIN / STDOUT,文件或参数/返回值都可以接受。 作为参考,以下是多达100个的大量数字: 12, 18, 20, 24, 30, 36, 40, 42, 48, 54, 56, 60, 66, 70, 72, 78, 80, 84, 88, 90, 96, 100 在A005101上可以找到更多信息 由于这是代码缺陷,因此会拒绝标准漏洞,并尝试使用碰巧选择的任何一种语言编写尽可能短的代码!

30
打印一堆无趣的数字!
这样创建一个无趣的数字(我完全没有为这个挑​​战所弥补): 取正整数N 通过在N的末尾添加N的数字来创建新的数字O 最终无趣的数字是O * N 例如对于N = 12: O = 1212 O * N = 1212 * 12 最终号码是14544 输入项 正整数N(N> 0)或与您的语言等效的整数。您不必捕获不正确的输入。 输出量 相应的无趣数字。 测试用例 1 -> 11 2 -> 44 3 -> 99 10 -> 10100 174 -> 30306276 计分 以字节为单位的最短代码为准。

30
最大公约数
您的任务是在尽可能少的代码字节中计算两个给定整数的最大公约数(GCD)。 您可以编写程序或函数,通过我们接受的任何标准方法(包括STDIN / STDOUT,函数参数/返回值,命令行参数等)获取输入并返回输出。 输入将是两个非负整数。您应该能够处理语言的默认整数类型支持的完整范围,也可以处理range [0,255],以较大者为准。您可以确保至少有一个输入为非零。 不允许使用用于计算GCD或LCM(最小公倍数)的内置函数。 适用标准代码高尔夫球规则。 测试用例 0 2 => 2 6 0 => 6 30 42 => 6 15 14 => 1 7 7 => 7 69 25 => 1 21 12 => 3 169 123 => 1 20 142 => 2 101 202 => 101

22
自然派#0-摇滚
目标 创建一个接受输入的程序/函数N,检查N随机整数对是否相对质数,然后返回sqrt(6 * N / #coprime)。 TL; DR 这些挑战是仅需要自然和大脑(也许还有一些可重复使用的资源)才能逼近Pi的算法模拟。如果您在僵尸启示录期间确实需要Pi,那么这些方法不会浪费弹药!还有另外八个挑战。检出沙盒帖子以提出建议。 模拟 我们在模拟什么?好吧,两个随机整数是相对质数(即coprime或gcd == 1)的概率是6/Pi/Pi,因此计算Pi的自然方法是挖出两个桶(或少数几个)的岩石。数他们;看看他们的gcd是否为1;重复。这样做后,一对夫妇很多次,sqrt(6.0 * total / num_coprimes)会趋向Pi。如果计算世界末日后的平方根使您感到紧张,请不要担心!有牛顿法。 我们如何模拟这一点? 接受输入 N 请执行以下N次数: 均匀生成随机正整数,i并且j 用 1 <= i , j <= 10^6 如果gcd(i , j) == 1:result = 1 其他: result = 0 取N结果的总和,S 返回 sqrt(6 * N / S) 规格 输入值 …
39 code-golf  math  random  pi  approximation  popularity-contest  code-golf  sequence  number-theory  binary  coding-theory  code-golf  math  3d  code-golf  code-golf  math  number  code-golf  kolmogorov-complexity  code-golf  ascii-art  graphical-output  binary-tree  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation  hexadecimal  code-golf  math  number  set-theory  code-golf  math  arithmetic  number-theory  integer  code-golf  string  kolmogorov-complexity  code-golf  math  sequence  arithmetic  decision-problem  code-golf  code-golf  ascii-art  code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

29
伪析因
有时在数学问题或谜语中会出现一个相当奇怪的数字。伪因子(N)是数字1到N的最小(即最低)公倍数;换句话说,它是最低的数字,其中包含从1到N的所有数字。 例如pseudofactorial(7)= 3 * 4 * 5 * 7,与7相同!除了2和6已删除,因为它们包含在其他术语中。 编写一个程序来计算pseudofactorial(N),并且一如既往地以最短的代码为准。 这是供您使用的简短列表。可以在OEIS中的A003418下找到更多测试用例。 阶乘: 1个 2 6 24 120 720 5040 伪因子: 1个 2 6 12 60 60 420

30
可除性测试
任务 给定两个严格的正整数n和d作为输入,请确定n是否可被d 整除,即是否存在整数q使得n = qd。 您可以编写程序或函数,并使用我们的任何标准方法来接收输入和提供输出。 输出应该是真实值或虚假值;如果n可被d整除,则为真;否则为f。 您的代码只需要处理可以本机表示的整数,只要它适用于所有带符号的8位整数即可。但是,您的算法必须适用于任意大整数。 您可以使用任何编程语言,但是请注意,默认情况下,这些漏洞是禁止的。 这是代码高尔夫球,因此以字节为单位的最短有效答案为准。 测试用例 n, d output 1, 1 truthy 2, 1 truthy 6, 3 truthy 17, 17 truthy 22, 2 truthy 1, 2 falsy 2, 3 falsy 2, 4 falsy 3, 9 falsy 15, 16 falsy 排行榜 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language …

15
看天上!这是一个超级骗子阵列!
在Code Review中受到我们竞争对手朋友的这个问题的启发。 定义 甲超级阵列是一个阵列,其中阵列中的每个新的元件比以前的所有元素的总和大。{2, 3, 6, 13}是一个超级数组,因为 3 > 2 6 > 3 + 2 (5) 13 > 6 + 3 + 2 (11) {2, 3, 5, 11}是不是一个超级阵列,因为 3 > 2 5 == 3 + 2 11 > 5 + 3 + 2 甲骗子阵列是一个阵列,其中阵列中的每个新的元件比以前所有的元素的乘积大。{2, 3, 7, 43, 1856}是一个超级数组,但它也是一个双精度数组,因为 3 > …

20
打印包含n的第n个素数
这个问题将是找到n第素数的一个转折。 挑战 您必须编写一个程序,该程序将接受一个input n,并输出n第一个质数,该质数的十进制表示形式包含十进制表示n形式。 困惑?这里有些例子。 n=1 Primes: 2, 3, 5, 7, 11 ^1 first prime that contains a 1 Output: 11 n=2 Primes: 2, 3, 5, 7, 11, 13, 17, 19, 23 ^1 ^2 second prime that contains a 2 Output: 23 n=3 Primes: 2, 3, 5, 7, 11, 13, …

30
一系列产品
您的任务很简单:给定两个整数a和b,输出∏[a,b]; 也就是介于a和之间的乘积b。您可能需要a和b任何合理的格式,不管是参数的函数,一个列表输入,标准输入,等等。您可以以任何合理的格式输出,例如返回值(用于函数)或STDOUT。a永远小于b。 请注意,结尾可能是的排他或包含b。我不挑剔 ^ _ ^ 测试用例 [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 这是一个代码高尔夫球,因此以字节为单位的最短程序获胜。 排行榜 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language …
39 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.