Questions tagged «math»

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

30
数学教学武器
上一次,当我试图提出一些并非重复的简单尝试时,结果却变得太难了。所以希望这次,确实是新手也可以尝试的尝试。 输入: 具有整数/小数的数组/列表。(或一个表示整数/小数的数组的字符串。) 输出: 遍历数字并按以下顺序应用以下五个数学操作数: 加法(+); 减法(−); 乘法(*或×或·); 实数/计算器部(/或÷); 取幂(^或**)。 (注意:括号中的符号只是为了说明而添加。如果您的编程语言对数学运算使用的符号与示例所使用的符号完全不同,那么这当然是完全可以接受的。) 继续进行操作,直到到达列表的末尾,然后给出总和的结果。 挑战规则: 用0(n ^ 0)求幂应该得到1(这也适用于0 ^ 0 = 1)。 没有用0(n / 0)除的测试用例,因此您不必担心这种边缘情况。 如果数组仅包含一个数字,则将其作为结果返回。 通用规则: 这是代码高尔夫球,因此最短答案以字节为单位。 不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 标准规则适用于您的答案,因此允许您使用STDIN / STDOUT,具有正确参数的函数/方法,完整程序。您的来电。 默认漏洞是禁止的。 如果可能的话,请添加一个带有测试代码的链接。 测试用例: [1,2,3,4,5] -> 0 -> 1 + 2 = 3 -> 3 - 3 = 0 -> 0 …

4
乘以受限操作
击败目前最好的答案有500名非官方赏金。 目标 您的目标是仅使用一组非常有限的算术运算和变量赋值将两个数相乘。 加成 x,y -> x+y 倒数x -> 1/x(非除法x,y -> x/y) 求反x -> -x(不是减法x,y -> x-y,尽管您可以通过两个操作来完成x + (-y)) 常数1(不允许其他常数,除非由的操作产生1) 变量分配 [variable] = [expression] 评分:值以变量a和开始b。您的目标是使用尽可能少的操作将其产品保存a*b到变量中c。每个操作和分配都+, -, /, =花费一个点(等效地,每次使用(1),(2),(3)或(4))。常量1是免费的。最少的解决方案获胜。Tiebreak是最早的帖子。 允许:您的表达式必须在算术上对“随机”实数a和正确b。它可能在R 2的零测量子集上失败,即,如果在a- b笛卡尔平面中绘制,则该集合没有面积。(由于0类似的表达式的倒数,可能需要这样做1/a。) 语法: 这是一个原子代码高尔夫。不得使用其他操作。特别是,这意味着没有函数,条件,循环或非数字数据类型。这是允许的操作的语法(可能性用分隔|)。程序是<statement>s 的序列,其中a <statement>如下所示。 <statement>: <variable> = <expr> <variable>: a | b | c | [string of letters of …

30
实施iOS 11计算器
iOS 11有一个错误,使1 + 2 + 3的结果为24。这与动画速度有关,但是无论如何: 任务是制造1 + 2 + 3 == 24。但只有那样。所以,你应该提供正确总结大多数序列,但收益函数24时的参数是1,2和3以任何顺序。 输入示例: 1 2 => 3 3 4 => 7 1 2 3 4 5 6 7 8 9 => 45 3 2 1 => 24 2 1 3 => 24 1 1 => 2 1 2 3 …
43 code-golf  math  number 

30
计算“标准高尔夫”问题的难度
简报 高尔夫球法典问题的难度可以这样计算: v问题的观看次数在哪里 这a是一个问题的答案数 和⌈ X ⌉是天花板操作。 也: 这个问题的当前难度:*** 任务 编写一个将使用两个整数(v and a)并输出的难度的程序asterisks (*)。 输入可以采用数组,分隔字符串或分隔函数参数的形式 测试数据 Views Answers Difficulty Program Output 163 2 2 ** 548 22 1 * 1452 24 1 * 1713 37 1 * 4162 32 2 ** 3067 15 3 *** 22421 19 10 ********** 伪代码示例 …
43 code-golf  math 

19
我的馅饼被平分了吗?
编写一个包含正整数的非空列表的程序或函数。您可能会假设它是以合理方便的格式输入的,例如"1 2 3 4"或[1, 2, 3, 4]。 输入列表中的数字表示完整饼图的切片,其中每个切片的大小与其对应的数字成比例,并且所有切片均按给定的顺序排列在图表周围。 例如,饼图为1 2 3 4: 您的代码必须回答的问题是:饼图是否一分为二?也就是说,从圆的一侧到另一侧是否存在一条完美的直线,将其对称地一分为二? 你需要输出truthy值,如果有至少一个平分线和输出falsy如果有没有价值。 在该1 2 3 4示例中,之间有一个等分线4 1,2 3因此输出将是真实的。 但是对于输入而言1 2 3 4 5,没有平分线,因此输出将是虚假的: 其他例子 以其他方式排列数字可能会消除等分线。 例如2 1 3 4→虚假: 如果输入列表中只有一个数字,则饼图不会一分为二。 例如10→虚假: 可能有多个平分线。只要大于零,输出就是真实的。 例如6 6 12 12 12 11 1 12→真实:(这里有3个等分线) 即使平分在视觉上不明显,也可能存在。 例如1000000 1000001→虚假: 例如1000000 1000001 1→真实: (感谢nces.ed.gov生成饼图。) 测试用例 …
43 code-golf  math  arithmetic  combinatorics  decision-problem  code-golf  sequence  number-theory  binary  code-golf  number-theory  set-theory  code-golf  hashing  code-golf  game  card-games  code-golf  ascii-art  code-golf  arithmetic  array-manipulation  jelly  code-golf  string  array-manipulation  code-golf  sorting  code-challenge  code-golf  number  date  binary  code-golf  arithmetic  code-golf  math  number  linear-algebra  polynomials  code-golf  ascii-art  code-golf  grid  decision-problem  code-golf  string  combinatorics  code-golf  string  kolmogorov-complexity  arithmetic  date  code-golf  number  data-structures  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation 

18
Universal Spooky Meme Translator
介绍 事实证明,外星人像我们一样爱模因。到目前为止,我们遇到的每一个外星人种族都有自己的版本2spooky4me(请参见以下问题)和等效版本,但有所不同。CUTE1f星球上的居民无法承受很多鬼怪,因此他们更喜欢1spooky2me鬼怪,而skeletor7的迷们喜欢它们一些鬼怪,因此他们倾向于使用9spooky11me。 挑战 翻译模因是一项艰苦的工作,因此您要编写一个通用的模因翻译器,以帮助这些人正确访问模因网。您的程序将接受一个模因和一个变换,以应用于该模因中的数字序列,以使其适合其他星球的居民。 输入项 您的程序将收到两个字符串输入: 输入模因(例如2spooky4me)。火柴[a-zA-Z0-9]+。 要应用的转换(例如+1,从2spooky4me到3spooky5me)。匹配[+\-*/^]\d+(你必须接受+,-,*,/,并^为运营商,无论在你的语言本地表示的)。 输出量 您的程序必须返回字符串输出(打印到标准输出或等效输出),并将给定的转换应用于输入模因中的数字序列。在一系列怪异的事件中,结果还表明,到目前为止遇到的所有种族都喜欢积分模因而不是分数模因,因此这些转换应执行整数算术(例如1spooky1me /2应该产生0spooky0me)。 例子 标准算术运算适用: Input: 2spooky4me +1 Output: 3spooky5me Input: 2spooky4me -1 Output: 1spooky3me Input: 2spooky4me *15 Output: 30spooky60me Input: 10spooky900me /5 Output: 2spooky180me 数字序列是不可或缺的;整数截断应在以下情况下发生: Input: idontunderstandmemes3 /2 Output: idontunderstandmemes1 您的输入内容可能没有任何数字序列: Input: notreallyafunnymeme *100 Output: notreallyafunnymeme 即使您选择的语言不是本机运算,您也必须支持幂运算: Input: 2spooky4me ^3 Output: …

30
构造身份矩阵
挑战非常简单。给定整数输入n,输出n x n单位矩阵。单位矩阵是1从左上角到右下角的s 矩阵。您将编写一个程序或函数来返回或输出您构造的身份矩阵。您的输出可能是2D数组,或者是由空格/制表符和换行符分隔的数字。 输入和输出示例 1: [[1]] 2: [[1, 0], [0, 1]] 3: [[1, 0, 0], [0, 1, 0], [0, 0, 1]] 4: [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]] 5: [[1, 0, 0, 0, 0], [0, 1, 0, 0, 0], …

30
定义一个函数f,使所有非零整数n的f(f(n))= -n
我经常访问一个编程博客,激发了这一挑战。请在此处查看原始帖子:编程难题 挑战 定义一个函数f:Q->Q,以便f(f(n)) = -n对所有非零整数n,其中,Q是有理数的集合。 细节 请使用您喜欢的任何语言定义一个函数或程序f,该函数或程序接受一个数字作为参数n并返回或输出一个数字f(n)。 可以通过最适合您的语言的机制来提供输入:函数自变量,从STDIN读取,命令行自变量,堆栈位置,语音输入,帮派标志等。 输出应该是功能/程序的返回值或打印到STDOUT。 我想将答案限制为不利用程序状态或从函数外部可见的全局内存/数据的函数f。例如,将计数器保留在该计数之外将对调用f次数f进行计数,并且仅基于此计数进行否定对任何人来说都不是挑战或有趣的事情。做出的决定f应仅依赖f词法范围内的数据。 但是,此限制可能不适用于某些面向堆栈的语言或其他无法区分这些类型的数据或范围的语言。请运用您最好的判断力来迎接挑战的精神。 计分 通用代码高尔夫规则适用-您的得分是源代码中的字节数。 最小答案要求的域和共域是f有理数的子集Q。如果将的域和共域限制f为整数Z,则分数是源代码中字节数的90%的上限。 抢七 如果出现平局,将按以下顺序使用: 源代码中可打印的非空白符号数量最少 最早提交答案的日期和时间 编辑 您不需要支持任意大小的数字。请使用您选择的语言(通常分别为整数和浮点)解释集合Z和Q数据类型。 如果您的解决方案完全依赖于数据类型的基础结构或位模式,请描述其局限性以及如何使用它。

30
画一个Sierpinski三角形
Sierpinsky三角形是通过截取三角形,将高度和宽度减小1/2,创建3个所得三角形副本并将每个三角形与其他两个三角形接触的方式创建的分形。如下图所示,对生成的三角形反复进行此过程,以生成Sierpinski三角形。 编写程序以生成Sierpinski三角形。您可以通过绘制实际三角形或使用随机算法生成图片来使用想要生成图案的任何方法。您可以绘制像素,ascii艺术作品或任何您想要的东西,只要输出看起来与上面显示的最后一张图片相似即可。最少的角色获胜。

4
f(g(x))减小而g(f(x))增大
为此,您需要在整数上实现两个函数f和g,使得f∘g是严格减少的函数,而g∘f是严格增加的函数。换句话说,如果取任意两个整数a <b,则f(g(a))> f(g(b))和g(f(a))<g(f(b))。f和g分别没有限制,只不过它们必须分别将一个整数映射到另一个整数。 请提供对f和g的简短描述,以及有关为什么它们具有必需属性的参数。 信用:这项挑战的灵感来自2011年罗马尼亚数学硕士竞赛中的一个问题(该问题提出了相同的问题,但用实数而不是整数)。如果您真的想要破坏者,那么现在您知道要搜索什么。 规则 应该从将一个整数映射到另一个整数的数学意义上来理解此挑战中的“函数”一词:您可以编写两个程序或两个函数,并像往常一样使用接收和提供输出的任何标准方法。您可以使用整数的字符串表示形式来代替实际的整数变量,但是输入和输出的类型应该相同,以便可以在不手动转换类型的情况下组成函数。请记住,从概念上讲,f和g仍需要是ℤ上的函数,因此您不能通过使用相同数字或类似形式的两个不同的字符串表示形式作弊。 请记住,函数可以是未命名的,只要它们本身或您定义的另一个函数不需要它们的名称即可。如果您确实命名了这两个功能中的一个或两个,则可以假定它们存在于同一程序中,因此它们在实现中可以相互引用(例如,def f(x): return -g(x)在Python中)。 通常的整数溢出规则适用:您的解决方案必须能够在语言的假设(或实际)版本中使用任意大整数,默认情况下,所有整数都是无界的,但是如果您的程序由于实现而在实践中失败不支持大整数,这不会使解决方案无效。 您可以使用任何编程语言,但是请注意,默认情况下,这些漏洞是禁止的。 这是代码高尔夫球,因此您的得分是两个函数的字节数之和与最短有效答案的总和。

29
Bitflip和求反
给定一个整数,请创建一个表达式,该表达式0使用一元求反-和按位补码~(~n= -n-1)生成,并将运算符从右向左应用。 ... -3 = ~-~-~0 -2 = ~-~0 -1 = ~0 0 = 0 1 = -~0 2 = -~-~0 3 = -~-~-~0 ... 您的表达式必须是尽可能地短,这意味着没有冗余部分~~,--,-0,或00。将表达式输出或打印为字符串或字符序列。 显示代码段 var QUESTION_ID=92598,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/92598/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var …

30
StringgnirtSStringgnirtSStringgnirtS
这对您来说是一个相对简单的挑战。 给定长度为N的字符串,向前输出该字符串,然后向后输出,然后向前,然后向后输出……等等。N次。例如,如果您输入的是 Hello! 您应该输出: Hello!!olleHHello!!olleHHello!!olleH 您也可以选择输出一个尾随换行符。 您的提交可以是完整程序,也可以是函数,并且您可以采用任何合理的格式进行输入和输出。例如,您可以从STDIN / STDOUT中获取IO,从函数中获取参数,并从文件中获取返回值,等等。您可以放心地假设输入字符串将不会为空,并且仅包含可打印的ASCII。您必须在一行上输出新字符串。因此,例如,如果最后一个示例的输出是 Hello! !olleH Hello! !olleH Hello! !olleH 这不是有效的解决方案! 这里是更多测试用例: Input: a Output: a Input: abcd Output: abcddcbaabcddcba Input: OK! Output: OK!!KOOK! Input: 4815162342 Output: 4815162342243261518448151623422432615184481516234224326151844815162342243261518448151623422432615184 Input: PPCG Output: PPCGGCPPPPCGGCPP Input: 42 Output: 4224 排行榜 由于这是一个代码高尔夫挑战,因此禁止了标准漏洞,以字节为单位的最短答案胜出!但是,这也是在任何特定语言中答案最短的竞赛。尽管Java答案不太可能会击败perl或某些打高尔夫球语言的答案,但拥有最短的Java答案仍然令人印象深刻。因此,您可以使用此页首横幅查看 所有语言中最短的答案,以及 每种语言的最短答案。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 # Language Name, N …
42 code-golf  string  code-golf  math  geometry  data-structures  repeated-transformation  code-golf  number  random  code-golf  math  rational-numbers  code-golf  ascii-art  animation  code-golf  ascii-art  number  code-golf  math  number  code-golf  data-structures  code-golf  string  parsing  code-golf  array-manipulation  random  permutations  code-golf  string  code-golf  parsing  code-golf  string  quine  code-golf  string  parsing  comment  code-golf  string  counting  natural-language  code-golf  string  decision-problem  code-golf  math  code-challenge  metagolf  test-battery  code-golf  string  code-golf  math  number  arithmetic  source-layout  code-golf  number  primes  decision-problem  code-golf  math  arithmetic  code-golf  date  code-golf  string  cryptography  code-golf  code-golf  chess  board-game  code-golf  geometry  grid  puzzle-solver  set-partitions  code-golf  number  natural-language  code-golf  ascii-art  code-golf  math  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  string  natural-language  code-golf  game  board-game  tic-tac-toe  code-golf  ascii-art  hexagonal-grid  code-golf  string  comment  code-golf  internet  code-golf  sorting  code-golf  kolmogorov-complexity  unicode  code-golf  tips  code-golf  string  natural-language  code-golf  string  kolmogorov-complexity  source-layout  hello-world  code-golf  string  kolmogorov-complexity  counting  natural-language  code-golf  random  quine  code-golf  string  math  bitwise  code-golf  permutations  code-golf  string  code-golf  arithmetic 

30
斐波那契反转!
介绍 我们都知道并喜欢我们的斐波那契数列,并且已经在这里看到了无数挑战。但是,我们仍然缺少一个非常简单的案例,该答案将提供:反斐波那契!因此,鉴于F_n您的工作就是寻找n。 规格 输入项 您的输入将是一个非负整数,保证是斐波那契数列的一部分。 输出量 输出也必须是非负整数。 该怎么办? 引言已经说过:给定斐波那契数,输出其索引。斐波那契编号在此定义为F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2),您将获得F(n)且必须返回n。 潜在的极端案例 0是有效的输入和输出。 如果给定“ 1”作为输入,则可以根据需要输出“ 1”或“ 2”。 您可能总是假设您的输入实际上是斐波那契数。 您可以假定输入可表示为32位带符号整数。 谁赢? 这是代码高尔夫球,因此最短的答案以字节为单位! 标准规则当然适用。 测试用例 0 -> 0 2 -> 3 3 -> 4 5 -> 5 8 -> 6 13 -> 7 1836311903 -> 46

20
计算两个数字的均值
免责声明:均值由我弥补 将个数的算术平均值定义为 将个数的几何平均值定义为 个数 的调和平均值定义为 将个数的二次均值定义为 均值()定义如下:定义四个序列()为ñnn中号1个(x1个,。。。,Xñ)= x1个+ x2+。。。+ xññM1(x1,...,xn)=x1+x2+...+xnnM_1(x_1,...,x_n)=\frac{x_1+x_2+...+x_n}{n}ñnn中号0(x1个,。。。,Xñ)= x1个X2。。。Xñ--------√ñM0(x1,...,xn)=x1x2...xnnM_0(x_1,...,x_n)=\root{n}\of{x_1x_2...x_n}ñnn中号− 1(x1个,。。。,Xñ)= n1个X2+ 1X2+ 。。。+ 1XñM−1(x1,...,xn)=n1x2+1x2+...+1xnM_{-1}(x_1,...,x_n)=\frac{n}{\frac{1}{x_2} + \frac{1}{x_2} + ... + \frac{1}{x_n}}ñnn中号2(x1个,。。。,Xñ)= x21个+ x22+ 。。。+ x2ññ--------------√M2(x1,...,xn)=x12+x22+...+xn2nM_2(x_1,...,x_n)=\root\of{\frac{x_1^2+x_2^2+...+x_n^2}{n}}中号中号MMM_M一种ķ,bķ,çķ,dķak,bk,ck,dka_k, b_k, c_k, d_k一种0= M1个(x1个,。。。,Xñ),b0= M0(x1个,。。。,Xñ),C0= M− 1(x1个,。。。,Xñ),d0= M2(x1个,。。。,Xñ),一种k + 1= M1个(一个ķ,bķ,çķ,dķ),bk + 1= M0(一个ķ,bķ,çķ,dķ),Ck + 1= M− 1(一个ķ,bķ,çķ,dķ),dk + 1= M2(一个ķ,bķ,çķ,dķ)a0=M1(x1,...,xn),b0=M0(x1,...,xn),c0=M−1(x1,...,xn),d0=M2(x1,...,xn),ak+1=M1(ak,bk,ck,dk),bk+1=M0(ak,bk,ck,dk),ck+1=M−1(ak,bk,ck,dk),dk+1=M2(ak,bk,ck,dk)a_0=M_1(x_1,...,x_n),\\b_0=M_0(x_1,...,x_n),\\c_0=M_{-1}(x_1,...,x_n),\\d_0=M_2(x_1,...,x_n),\\ a_{k+1}=M_1(a_k,b_k,c_k,d_k),\\b_{k+1}=M_0(a_k,b_k,c_k,d_k),\\c_{k+1}=M_{-1}(a_k,b_k,c_k,d_k),\\d_{k+1}=M_2(a_k,b_k,c_k,d_k) 所有四个序列收敛到相同的数字。中号中号(x1个,X2,。。。,Xñ)MM(x1,x2,...,xn)M_M(x_1,x_2,...,x_n) 例 …
41 code-golf  math 

30
这个数字是-2的整数次幂吗?
有很多聪明的方法来确定数字是否为2的幂。这不再是一个有趣的问题,因此让我们确定给定的整数是否为-2的整数次幂。例如: -2 => yes: (-2)¹ -1 => no 0 => no 1 => yes: (-2)⁰ 2 => no 3 => no 4 => yes: (-2)² 规则 您可以编写程序或函数,并使用接收输入和提供输出的任何标准方法。 您的输入是一个整数,如果该整数是-2的整数次幂,则输出必须是一个真实值,否则,则必须是一个虚假值。不允许其他输出(例如警告消息)。 通常的整数溢出规则适用:您的解决方案必须能够在语言的假设(或实际)版本中使用任意大整数,默认情况下,所有整数都是无界的,但是如果您的程序由于实现而在实践中失败不支持大整数,这不会使解决方案无效。 您可以使用任何编程语言,但是请注意,默认情况下,这些漏洞是禁止的。 获奖条件 这是一场代码高尔夫球比赛:字节数最少(在您选择的编码中)的答案是获胜者。

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.