Questions tagged «math»

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


30
可鸣叫的数学艺术
整数数学布局在网格上时可以生成惊人的模式。即使是最基本的功能,也可以完成精美的设计! 你的挑战 为1024x1024图像的红色,绿色和蓝色值编写3个Tweetable(表示140个字符或更少)功能体。 函数的输入将是两个整数i(给定像素的列号)和j(给定像素的行号),输出将是0到1023(含)之间的无符号短整数,表示给定的数量像素(i,j)中存在的颜色。 例如,以下三个函数产生以下图片: /* RED */ return (unsigned short)sqrt((double)(_sq(i-DIM/2)*_sq(j-DIM/2))*2.0); /* GREEN */ return (unsigned short)sqrt((double)( (_sq(i-DIM/2)|_sq(j-DIM/2))* (_sq(i-DIM/2)&_sq(j-DIM/2)) )); /* BLUE */ return (unsigned short)sqrt((double)(_sq(i-DIM/2)&_sq(j-DIM/2))*2.0); /* RED */ return i&&j?(i%j)&(j%i):0; /* GREEN */ return i&&j?(i%j)+(j%i):0; /* BLUE */ return i&&j?(i%j)|(j%i):0; 规则 有了此C ++代码,就可以替换您的函数。我提供了一些宏,并包含了该库,并且您可能包含complex.h。您可以使用这些库和/或宏中的任何函数。请不要使用超出此范围的任何外部资源。 如果该版本不适合您,请确保您使用的是: g++ filename.cpp -std=c++11 如果这不起作用,请使用使用未签名字符而不是未签名短裤的备用版本。 Michaelangelo提供了清理后的24位或48位彩色输出版本。 ...

8
上升还是下降?
给定山羊的图像,您的程序应该最好尝试识别山羊是否倒置。 例子 这些是输入可能是什么的示例。不是实际的投入 输入: 输出: Downgoat 规格 您的程序最多应为30,000个字节 输入将包含完整的山羊 图片将始终包含山羊 如果山羊倒立,输出Downgoat,否则Upgoat 输入将是您可以将图像作为输入(文件名,图像的base64等)。 要点文件名仅供参考,不要依赖于包含“ Upgoat”或“ Downgoat”的图像名称或其他元数据。 请不要硬编码。这很无聊,我无法完全执行它,但是我可以很好地询问。 测试用例 要点与图像。开头的图像downgoat具有Downgoat输出和图像开始与upgoat有Upgoat输出。 第二批测试用例 确保在所有测试用例上测试图像。这些图像是jpgs。图像大小确实有所不同,但没有说太多。 注意:在接受答案之前,可以添加一些测试用例,以避免使用硬编码的答案并检查程序的总体性能。 正确获得我的头像的奖励积分:P 计分 分数是可以通过以下方式计算的百分比: (number_correct / total) * 100

30
数学是事实。编程不是
在数学中,感叹号!通常表示阶乘,并且在论点之后出现。 在编程中,感叹号!通常表示取反,它位于参数之前。 对于这一挑战,我们仅将这些运算应用于零和一。 Factorial 0! = 1 1! = 1 Negation !0 = 1 !1 = 0 取一个零或多个字符串!,然后是0或1,然后是零个或多个字符串!(/!*[01]!*/)。 例如,输入可以是!!!0!!!!或!!!1或!0!!或0!或1。 在!的之前的0或者1是否定和!年代后的阶乘。 阶乘的优先级比否定的优先级高,因此总是优先应用阶乘。 例如,!!!0!!!!确实意味着!!!(0!!!!),或者更好!(!(!((((0!)!)!)!)))。 输出所有阶乘和否定的结果应用。输出将始终为0或1。 测试用例 0 -> 0 1 -> 1 0! -> 1 1! -> 1 !0 -> 1 !1 -> 0 !0! -> 0 !1! -> 0 0!! -> ...

30
多年来的编程语言
在这一挑战中,用户将轮流使用允许逐渐变老的编程语言来完成三个相当简单的编码任务。 第一个答案必须使用2015年制作的编程语言。一旦至少有一种2015年语言的答案,答案就可以使用2014年制作的编程语言。类似地,不允许使用2013年语言的答案。直到至少有一个2014年答案。 通常,直到提交了使用Y + 1年的语言的答案后,才允许使用Y年的编程语言。唯一的例外是Y = 2015。 寻找你的语言年 要回答这个问题,您必须知道您的编程语言的“制造年份”。当然,这是一个主观术语;一些语言是在多年的发展过程中开发的,并且每年仍在升级许多语言。让“制造”该语言的年份成为该语言的实现在公众中出现的第一年。 例如,Python是1991年制造的,尽管它的开发自1989年以来一直在进行,而1.0版直到1994年才发布。 如果今年仍然是主观的,请使用常识选择最合适的年份。不要因对年份的选择而陷入一点分歧。请提供指向您的语言的来源的链接。 编程语言的不同版本或标准(例如Python 1、2、3)被视为具有相同初始年份的相同语言。 因此,除非您的语言年份是2015年,否则您只能在提交了其语言年份为您的前一年的答案后才能提交答案。 如果已经存在与您年份相同的有效答案,则可以回答。您的语言是在今年早些时候还是晚些时候开发都没有关系。 任务 您必须完成任务1到3。任务0是可选的。 这些任务或多或少地被选择为与编程的三个重要方面相对应:提供输出(任务1),循环(任务2)和递归(任务3)。 任务0-语言历史记录(可选) 至少写一个段落来说明您所选择的编程语言的历史:谁开发了它,为什么,怎么做等等。如果您本人是在语言诞生时就在身边的,甚至可能在语言的发展中发挥了作用,则尤其值得鼓励。随意将有关该语言对您或您的工作或类似事情的影响的个人轶事联系起来。 如果您太年轻而又不做大量研究就不了解您的语言历史,请考虑给老用户留下笔记,说他们可以编辑您的帖子并添加一些第一手的历史记录。 任务1-“你好,世界!” 变体 编写一个打印程序 [language name] was made in [year made]! 到您的语言的标准输出区域(最新语言的标准输出)。 例如,如果语言是Python,则输出为: Python was made in 1991! 任务2-ASCII Art N 编写一个程序,让用户在奇正整数输入(你可以假设输入始终有效),并打印出来使用字符的ASCII艺术字母N制成N。 如果输入为1,则输出为: N 如果输入为3,则输出为: N N NNN N N ...

4
超编程:N + N,N×N,N ^ N合而为一
编写一个程序,接受N到1到9之间的一个数字。2如果N是1,4如果N是2,6如果N是3,则程序应以其本机形式输出N + NEg输出。 当程序中的每个字符在适当位置被复制,那么它应该是一个程序,在N取(仍从1到9),并输出N×NEG输出1如果N 1,4如果N 2,9如果N 3,等等。 当程序中的每个字符都一式三份时,它应该是一个程序,1如果N为1,4则输入N(仍从1到9),并输出N ^ NEg输出,如果N为2,27如果N为3,387420489如果N为9,等等 不需要9以上的数字,因为10 ^ 10超出了许多语言通常的整数范围。 例 如果您的初始程序是 My_Program! Exit(); 那么它应该能够吸收N并输出N + N。 此外,该程序 MMyy__PPrrooggrraamm!! EExxiitt(());; 应该取N并输出N×N。 最后,程序 MMMyyy___PPPrrrooogggrrraaammm!!! EEExxxiiittt((()));;; 应该取N并输出N ^ N。 不需要四字符程序和其他程序。 规则 输入和输出应为普通格式的十进制数字。您可以使用不同的底数来回答,以炫耀您的代码,但是答案是非竞争性的。 Windows用户可以将其\r\n视为一个字符,因为类似的事情是\r\r\n\n没有意义的,甚至是行不通的。 以字节为单位的最短本机程序(N + N个)获胜。

11
(-a)×(-a)= a×a
我们都知道(希望如此),但是您能证明吗?(− a )× (− a )= a × a(-一种)×(-一种)=一种×一种(-a) \times (-a) = a \times a 您的任务是使用环形公理证明这一事实。什么是环公理?环公理是一组规则的列表,一组集合上的两个二进制操作必须遵循这些规则。这两个操作是加法和乘法。对于这个挑战,这里是环公理,其中和是对某个集合封闭二元运算,是对的封闭一元运算,而,和是成员:+++××\times+++××\times小号小号S---小号小号S一种一种abbbCCc小号小号S a + (b + c )= (a + b )+ c一种+(b+C)=(一种+b)+Ca + (b + c) = (a + b) + c a + 0 = a一种+0=一种a + 0 = a a + (− a ...

30
一个接一个的OEIS
作为13/03/2018 16:45 UTC的,获胜者是回答#345,由Scrooble。这意味着比赛已正式结束,但只要他们遵守规则,就可以继续发布答案。 同样,只需快速回答排名靠前的三个回答者即可: 1. NieDzejkob -41个答案 2. KSmarts -30个答案 3. 超中微子 -26个答案 这是一个答案链问题,使用的是OEIS的序列以及先前提交内容的长度。 此答案链问题将以以下方式工作: 我将发布第一个答案。所有其他解决方案必须源于此。 下一个用户(我们称它们为userA)将找到OEIS序列,其中其索引号(请参见下文)与我的代码的长度相同。 然后,他们必须使用该序列以未使用的语言编写一个程序,该程序将一个整数作为输入n,并按该序列输出第n个数字。 接下来,他们在自己的解决方案之后发布解决方案,并且新用户(userB)必须重复相同的操作。 n序列的第一个项是第一个项之后n次的项,第一个值是其OEIS页上给出的第一个值。在这个问题中,我们将对这些序列使用0索引。例如,使用A000242和n = 3,正确的结果将是25。 然而! 这不是代码问题,因此最短的代码无关紧要。但是代码的长度仍然会产生影响。为了防止序列重复,您的字节数必须唯一。这意味着此处提交的任何其他程序都不能与您的字节长度相同。 如果没有最后一个帖子的长度顺序,则帖子的顺序是未使用的最低顺序。这意味着所使用的序列也必须是唯一的,并且该序列不能与您的字节数相同。 在发布答案并且超过一个星期没有发布新答案之后,最后一个发布者(未中断链接的答案)之前的答案将获胜。 输入输出 通用输入和输出规则适用。输入必须是整数或整数的字符串表示形式,输出必须是序列中的正确值。 格式化 与大多数答案链式问题一样,请按照以下格式设置答案格式 # N. language, length, [sequence](link) `code` [next sequence](link) *anything else* 规则 发布答案后,您必须等待至少1个小时才能发布答案。 您不能连续发布两次(或更多)。 序列的索引号是A零件之后的数字,并且去除了前导零(例如,A000040索引号为40) 您可以假定输入或所需的输出都不会超出您的语言数字范围,但是请不要滥用它,例如,选择仅使用数字1的语言。 如果提交的长度超过65536个字符,请提供一个链接,以访问代码(例如,pastebin)。 n 绝对不会大于1000,也不会超出序列的范围,只是为了防止准确性差异阻止语言竞争。 每有150个(有效)答案,使用一种语言的次数就会增加。因此,在发布150个解决方案之后,每种语言都可以使用两次(所有以前的答案都计入其中)。例如,发布150个答案后,Python 3可以使用两次,但是由于它已经被使用过一次,这意味着它只能再使用一次,直到发布了300个答案。 ...

12
证明俄罗斯密码标准过于结构化
这一挑战的目标是找到一个不可能短期实现以下功能p,在您选择的langage。这是实现它的C代码(请参阅 此TIO链接,也将输出其输出)和包含该代码的Wikipedia页面。 unsigned char pi[] = { 252,238,221,17,207,110,49,22,251,196,250,218,35,197,4,77, 233,119,240,219,147,46,153,186,23,54,241,187,20,205,95,193, 249,24,101,90,226,92,239,33,129,28,60,66,139,1,142,79, 5,132,2,174,227,106,143,160,6,11,237,152,127,212,211,31, 235,52,44,81,234,200,72,171,242,42,104,162,253,58,206,204, 181,112,14,86,8,12,118,18,191,114,19,71,156,183,93,135, 21,161,150,41,16,123,154,199,243,145,120,111,157,158,178,177, 50,117,25,61,255,53,138,126,109,84,198,128,195,189,13,87, 223,245,36,169,62,168,67,201,215,121,214,246,124,34,185,3, 224,15,236,222,122,148,176,188,220,232,40,80,78,51,10,74, 167,151,96,115,30,0,98,68,26,184,56,130,100,159,38,65, 173,69,70,146,39,94,85,47,140,163,165,125,105,213,149,59, 7,88,179,64,134,172,29,247,48,55,107,228,136,217,231,137, 225,27,131,73,76,63,248,254,141,83,170,144,202,216,133,97, 32,113,103,164,45,43,9,91,203,155,37,208,190,229,108,82, 89,166,116,210,230,244,180,192,209,102,175,194,57,75,99,182, }; unsigned char p(unsigned char x) { return pi[x]; } 什么是 p p是两个俄罗斯密码标准的组成部分,即哈希函数Streebog和块密码Kuznyechik。在本文中(以及在ISO会议期间),这些算法的设计者声称他们pi通过选择随机的8位排列来生成数组。 “不可能”的实现 有8位上的排列。因此,对于给定的随机置换,不应期望实现该置换的程序需要少于1683位。256 !≈ 21684256!≈21684256! \approx 2^{1684} 但是,我们发现了多个异常小的实现(我们在此处列出),例如以下C程序: p(x){unsigned char*k="@`rFTDVbpPBvdtfR@\xacp?\xe2>4\xa6\xe9{z\xe3q5\xa7\xe8",l=0,b=17;while(--l&&x^1)x=2*x^x/128*285;return l%b?k[l%b]^k[b+l/b]^b:k[l/b]^188;} 它仅包含158个字符,因此适合1264位。单击此处查看它是否有效。 我们谈论“不可能”的简短实现是因为,如果排列是随机过程的输出(如其设计者所声称的那样),那么这种简短的程序将不存在(有关更多详细信息,请参见本页)。 参考实施 以前的C代码的可读性更高的版本是: ...

27
代码会终止吗?
这是我想到的一个代码高尔夫球挑战。挑战在于编写尽可能短的代码,以使代码是否终止是一个悬而未决的问题。我的意思的示例可能是下面的一段python代码,从anwser改编成这个 cs stackexchange 问题。 def is_perfect(n): return sum(i for i in range(1, n) if n % i == 0) == n n = 3 while not is_perfect(n): n = n + 2 数学家们猜测没有奇数完美的数字,但是它从未得到证明,因此没有人知道这段代码是否会终止。您能否提出较短的其他代码段(也许依赖于其他未解决的问题,例如Collat​​z猜想或孪生素数猜想),但是它们是否终止并不知道? 编辑:有些人提出了一个很好的附加规则-问题的解决方案应该是确定性的。尽管如果您可以使用不确定性找到更短的解决方案,可能会更加有趣。在这种情况下,规则是找到一个终止概率未知的代码段。
92 code-golf  math 

30
每种语言的Mandelbrot图片
在我接触过的任何图形应用程序中,我总是使用Mandelbrot图像作为Hello World的“图形”版本。现在轮到你们了。 语言必须能够图形输出或绘制图表(不允许保存文件) 渲染正方形图像或图形。大小至少为128,最大为640 * 分形坐标范围从大约-2-2i到2 + 2i Mandelbrot集外的像素应根据大小超过2之前的迭代次数进行着色(不包括*黑色和白色) 每个迭代计数必须具有唯一的颜色*,并且相邻的颜色最好应易于用眼睛区分 其他像素(大概在Mandelbrot集内)必须为黑色或白色 至少99次迭代 不允许使用ASCII艺术 *除非受平台限制,例如图形计算器 允许: 禁止:( 缩小的图像) 获奖条件: 每种语言的最短版本(以字节为单位)将在此帖子中提及,并按大小排序。 该按钮将永远不会被“接受”。 排行榜: 显示代码段 /* Configuration */ var QUESTION_ID = 23423; // Obtain this from the url // It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe"; var ...

14
星空中的色彩
编写一个程序,接受一个字符串或文本文件,其第一行的格式为 width height 然后每行的格式为 x y intensity red green blue 哪里: width并且height可以是任何正整数。 x并且y可以是任何整数。 intensity 可以是任何非负整数。 red,green和blue可以是0到255之间的任何整数(包括0和255)。 你的程序必须输出真彩在它的尺寸为任何常见的无损图像文件格式的图像width通过height。每条x y intensity red green blue线代表必须在图像上绘制的彩色星星或球体。可能有任何数量的星形要绘制,包括0。您可以假定字符串或文件末尾有换行符。 绘制图像的算法如下,但是只要结果相同,您可以按照自己喜欢的任何方式实现它: 对于图像中的每个像素(X,Y)(其中X在最左边缘为0,在最右边缘为width-1,Y在顶部边缘为0,在底部边缘height-1),颜色通道C ϵ { 红色, 绿色,蓝色 }(固定在0到255之间的值)由以下公式给出: 其中dist函数为欧几里得距离: 或曼哈顿距离: 根据高尔夫球性或美观性,选择您喜欢的距离功能。 输入中除第一行外的每一行都是“ 星星”集的元素。因此,例如,S X表示x对输入线中的一个值,和S Ç表示任一red,green或blue,这取决于当前正在计算色彩通道。 例子 例子A 如果输入是 400 150 -10 30 100 255 128 0 输出应该是 如果您使用的是欧几里德距离,并且 如果您使用的是曼哈顿距离。 ...

30
什么时候(x == x + 2)?[关闭]
挑战:x以这样一种方式定义表达式,使表达式(x == x+2)求值为true。 我用C标记了问题,但欢迎使用其他语言的答案,只要它们具有创造力或突出语言的有趣方面即可。 我打算接受C解决方案,但其他语言也可以投票。 正确-适用于符合标准的实现。例外-假设是基本类型的实现,如果是常见实现(例如,假设int是32位2的补码),则可以。 简单-应该很小,使用基本语言功能。 有趣-我承认这是主观的。我有一些我认为有趣的示例,但我不想给出任何提示。更新:避免预处理器很有趣。 快速-第一个好的答案将被接受。 得到60个答案(我从没想到过这样的参与)后,总结一下可能会很好。 这60个答案分为7组,其中3组可以用C语言实现,其余用其他语言实现: C预处理程序。#define x 2|0有人建议,但还有许多其他可能性。 浮点。大数,无穷大或NaN都起作用。 指针算术。指向巨大结构的指针导致加2来回绕。 其余的不适用于C: 运算符重载- +不加或==始终返回true的 A。 制作x一个函数调用(有些语言允许它没有x()语法)。然后,它每次都可以返回其他内容。 一位数据类型。然后x == x+2 (mod 2)。 不断变化2-您0可以使用某种语言进行分配。
90 math  arithmetic  c 

6
硬编码高尔夫:正则表达式可除以7
Matthias Goergens的正则表达式为25,604个字符(低于原来的63,993个字符),以匹配可以被7整除的数字,但是其中包括很多毛病:多余的括号,分布(xx|xy|yx|yy而不是[xy]{2})和其他问题,尽管我敢肯定重新开始将有助于节省空间。这可以做多小? 允许使用各种合理的正则表达式,但正则表达式中不包含可执行代码。 正则表达式应匹配所有包含十进制表示形式的数字的字符串,该数字可以被7整除。不允许开头为0的正则表达式的额外功劳。

30
从较小的“ H”创建一个“ H”
挑战 创建一个函数或程序,当给定整数时size,该函数或程序将执行以下操作: 如果size等于1,则输出 H H HHH H H 如果size大于1,则输出 X X XXX X X X程序/功能的输出在哪里size - 1 (只要您愿意,0只要您在答案中指定,就可以使基本情况与相对应) 可以使用以下任何一种输出格式,以您更方便的方式: 所需结构的字符串,其中任意两个不同的字符分别对应于H和space 具有所需结构的二维数组,其中任意两个不同的值分别对应于H和space 字符串的数组/列表,每个字符串中有一行输出,并且与H和对应的任意两个不同的值space 只要每行上有恒定数量的前导空格,就可以使用前导空格。两个不同的输出字符可以取决于您选择的任何内容,只要它们不同即可。 指定代码返回的输出格式。 测试用例 1 H H HHH H H 2 H H H H HHH HHH H H H H H HH HH H HHHHHHHHH H HH HH ...
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

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.