Questions tagged «geometry»

该挑战旨在通过使用,操纵或创建形状或其他几何结构来解决。

8
绘制图像作为Voronoi地图
归功于Calvin的兴趣爱好,将我的挑战想法推向正确的方向。 考虑平面中的一组点,我们将其称为site,并将颜色与每个站点关联。现在,您可以使用最接近的站点的颜色为每个点着色,从而绘制整个平面。这称为Voronoi图(或Voronoi图)。原则上,可以为任何距离度量定义Voronoi映射,但是我们将仅使用通常的欧几里德距离r = √(x² + y²)。(注意:您不一定非要知道如何计算和渲染其中之一才能在此挑战中竞争。) 这是一个包含100个站点的示例: 如果查看任何像元,则该像元内的所有点都比相应的地点更近。 您的任务是使用这样的Voronoi贴图来近似给定图像。你给出任何方便的光栅图形格式的图像,以及一个整数ñ。然后,您应该生成最多N个站点,并为每个站点生成一个颜色,以使基于这些站点的Voronoi地图尽可能接近输入图像。 您可以使用此挑战底部的堆栈片段来从输出中渲染Voronoi贴图,也可以根据需要自己渲染。 您可以使用内置函数或第三方函数从一组站点计算Voronoi地图(如果需要)。 这是一次人气竞赛,因此以最多净票数赢得答案。鼓励选民通过以下方式判断答案 原始图像及其颜色的近似程度。 该算法在不同种类的图像上的效果如何。 该算法对小N的效果如何。 该算法是否自适应地对需要更多细节的图像区域中的点进行聚类。 测试影像 这是一些测试您的算法的图像(一些我们通常的怀疑者,一些新的怀疑者)。单击图片查看大图。 第一排的海滩是由奥利维亚·贝尔(Olivia Bell)绘制的,并在她的允许下包括在内。 如果您想要其他挑战,请尝试白色背景的Yoshi并使其腹部正确。 您可以在此imgur画廊中找到所有这些测试图像,您可以在其中将它们下载为zip文件。专辑还包含一个随机的Voronoi图作为另一项测试。作为参考,以下是生成它的数据。 请提供用于各种不同图像和N的示例图,例如100、300、1000、3000(以及适用于某些相应单元格规范的粘贴框)。您可以根据需要在单元格之间使用或忽略黑色边缘(在某些图像上看起来比在其他图像上看起来更好)。但是,不要包括这些网站(当然,在一个单独的示例中,除非您想说明您的网站展示位置如何工作)。 如果要显示大量结果,可以在imgur.com上创建一个图库,以使答案的大小合理。另外,也可以像在参考答案中所做的那样,将缩略图放在您的帖子中,并使其链接到较大的图像。您可以通过s在imgur.com链接(例如I3XrT.png-> I3XrTs.png)后附加文件名来获得小缩略图。另外,如果发现不错的东西,请随时使用其他测试图像。 渲染器 将输出粘贴到以下堆栈片段中以呈现结果。确切的列表格式无关紧要,只要每个单元格由5个浮点数按顺序指定x y r g b,其中x和y是单元格站点的坐标,并且r g b是该范围内的红色,绿色和蓝色通道0 ≤ r, g, b ≤ 1。 该代码段提供了一些选项,用于指定单元格边缘的线宽,以及是否应显示单元格位置(后者主要用于调试目的)。但是请注意,仅当单元格规格更改时才重新渲染输出-因此,如果您修改其他一些选项,请为单元格或其他内容添加一个空格。 显示代码段 function draw() { document.getElementById("output").innerHTML = svg } function drawMap() ...

27
安抚您的Google霸主:绘制“ G”徽标
编写一个程序或函数,该程序或函数采用正整数N,并根据以下*构造输出Google的“ G”徽标的N×N像素图像: 例如,如果N为400,则应输出400×400像素的徽标,并带有正确的尺寸和颜色: 无论N的大小如何,它都应该看起来准确。例如,这里是N = 13: 您的代码不需要连接到互联网。例如,不允许缩放外部托管的svg。(不过,缩放在代码中编码的svg会很好。) 是否可以使用抗锯齿。由你决定。 请注意,“ G”的水平条并未一直延伸到图像的右边缘。圆在切掉之前通常在右边缘向内弯曲。 以字节为单位的最短代码获胜。 *徽标的结构已针对此挑战进行了简化。正确的构造可以在这里和这里看到。

16
在常规网格之外的任何东西上实施生活游戏
康威的《人生游戏》(几乎)总是在规则的正方形网格上播放,但不一定如此。 编写一个程序,该程序在不是欧式正方形,三角形或六边形的规则平铺的欧几里德平面的二维平铺上实现Conway的《生命游戏》中的标准单元格相邻规则。 具体来说,您选择的平铺... 必须包含至少2个(但数量有限)形状不同的原生动物。 不同的形状可以彼此缩放或旋转。 他们必须能够平铺整个平面而不会留下孔。 它们必须是具有有限周长的简单多边形。(它们可能不是那么简单。) 必须与正方形,三角形和六边形网格同构不同。 不允许将任何细化为规则正方形,三角形或六边形网格的平铺。(您仍然可以在其他拼贴中使用正方形/三角形/六边形。) 任何两个原生动物之间的边界可能包含多个边和顶点,但必须连续。 您的平铺可能是周期性的,也可能是非周期性的,但是当扩展到覆盖整个平面时,每个prototile必须无限次出现。(因此,无需对切片的某些部分进行“硬编码”以帮助实现下面的额外要点。) 您的每个人工繁殖体都代表一个与其他细胞相邻的“生命游戏”细胞: 共享任何边或任何顶点的像元都被视为相邻像元。 共享多个边或顶点的像元仍仅在彼此相邻的邻居处计数一次。 细胞不能与自己相邻。 拼贴灵感链接: http://en.wikipedia.org/wiki/Tiling_by_regular_polygons http://en.wikipedia.org/wiki/List_of_uniform_tilings http://en.wikipedia.org/wiki/Aperiodic_tiling http://en.wikipedia.org/wiki/Penrose_tiling 输出量 您的程序应该输出其中包含正在玩的生命游戏的拼贴形式的图形表示,您当然应该以image / gif / jsfiddle格式发布。 请绘制瓷砖边缘线,对死细胞使用浅色,对活细胞使用深色。 计分 您的投稿分数是增票数减去减票数,以及在平铺中发现常见的“人生游戏”模式的加分: 寻找静物 -从一代到下一代都不会改变的模式。(+2) 查找周期2到29的振荡器。(每找到5个周期,每个周期+3,或者最多+15点) 查找周期为30或更长时间的振荡器。(+7) 找到一艘太空飞船 -它可以任意离开其起始位置而不会留下任何碎片。(它不一定是移动的振荡器。)(+10) 找到另一个以明显不同的方式移动的太空船(而不是第一个太空船的镜像版本),例如,请参见glider和LWSS。(+10) 寻找无限增长的模式。您不必证明增长是无限的,只需向我们显示足够的证据证明这种增长实际上是肯定的。(+25) 找到枪 -可以永久产生飞船的东西(这也算作无限增长)。(+50) 无限的生长模式必须以有限数量的活细胞开始,其他模式必须始终包含有限数量的活细胞(例如,太空船不应随时间而任意增大)。 由于非定期平铺的性质,似乎其中许多模式无法实现。因此,任何可验证的非定期平铺都会自动获得+40分。在非定期平铺中某个位置起作用的模式不必在其他位置起作用。 每个奖金只能应用一次。自然,我们需要查看输出以验证它们。最高分获胜。 笔记 每个答案只能将奖金应用于一个特定的拼贴。(尽管可以包括相关的拼贴图。) 人生游戏规则如下: 任何少于2个或超过3个活邻居的活细胞都将死亡。 任何具有3个活着邻居的死细胞都可以存活。 其他单元格不变。 不管边界条件如何,都可以使用加分点的模式,但否则,您可以选择所需的任何边界条件。 默认情况下,背景应为所有无效磁贴。 ...

30
画冰岛国旗
今年的UEFA Euro 2016已经结束,除了一些负面新闻外,冰岛国家足球队也带来了非常积极的惊喜。让我们画他们的国旗。 输入值 好吧,显然,这一挑战没有任何投入。 输出量 以至少100 x 72像素或25 x 18字符的任何适用视觉格式绘制冰岛国旗。 将输出保存到文件或立即呈现-示例格式为:png,jpg等图像,矢量图形,在HTML画布上绘制,甚至使用非空格字符进行可视化。 使用这些颜色:蓝色:#0048e0,白色:#ffffff和红色:#d72828。 如果你的语言不支持特定的颜色值,使用标准值,红色,蓝色和白色从ANSI颜色代码。 按照正确的比例绘制标志,如下图所示: 样板 您可以编写程序或函数。如果它是一个匿名函数,请举例说明如何调用它。 这是代码高尔夫球,因此最短答案以字节为单位。 不允许出现标准漏洞。 排行榜 显示代码段 var QUESTION_ID = 85141; // 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 COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk"; var ...

30
画法国国旗
已经有许多发布的其他标志的挑战,但没有一个是国旗的法国。这周似乎是合适的时间。 以尽可能少的字节产生此标志: 图片的比例必须为3:2,且尺寸至少应为78像素宽和52像素高。 每个条纹占据宽度的三分之一。 条纹的颜色从左至右分别为RGB: ,(0, 85, 164),。(255, 255, 255)(239, 65, 53) 可以将图像以任何常见的图像文件格式保存到文件中,或通过原始方式通过管道传输到STDOUT,或者可以显示它。 或者,使用ANSI颜色代码为标志输出一个至少由78个字符宽的文本块,该文本块由非空白字符组成,用于描述该标志。(使用标准的蓝色,白色和红色。) 不允许内置标志图像/库。 以字节为单位的最短代码获胜。 排行榜 这篇文章底部的堆栈摘录从答案a)生成排行榜,答案是每种语言的最短解决方案列表,b)则是总体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以将旧分数保留在标题中,方法是将它们打掉。例如: ## Ruby, <s>104</s> <s>101</s> 96 bytes 如果您想在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: ## Perl, 43 + 2 (-p flag) = 45 bytes 您还可以将语言名称设置为链接,然后该链接将显示在代码段中: ## [><>](http://esolangs.org/wiki/Fish), 121 bytes 显示代码段 <style>body { ...

3
链轮科学:动画链传动系统
这种挑战的目标是产生一个的动画链驱动系统中,由一组中的链轮的齿轮通过一个连接在一起的链。 一般要求 您的程序将获得链轮的列表,指定为(x, y, radius)三重轮。将所得的链驱动系统由这些链轮,由连接在一起的闭合绷紧链越过它们各自,为了。您的目标是制作无限循环的动画,以显示运动中的系统。例如,给定输入 (0, 0, 16), (100, 0, 16), (100, 100, 12), (50, 50, 24), (0, 100, 12) ,输出应类似于 。 的坐标系统应该是这样的x轴右点,和y轴指向上。您可以假定半径是大于或等于8的偶数(我们稍后将说明为什么如此)。您还可以假定至少有两个链轮,并且链轮彼此不相交。该单位的输入不是太关键。这篇文章中的所有示例和测试用例都使用像素作为输入单位(例如,上图中的中间链轮的半径为24像素;)请尽量不要与这些单位偏离太多。在其余的挑战中,空间量应理解为与输入相同的单位-请确保比例正确!输出的尺寸应略大于所有链轮的边界框,并应足够大以使整个系统可见。尤其是,链轮的绝对位置不应影响输出。仅它们的相对位置应该如此(例如,如果我们将上述示例中的所有链轮偏移相同的量,则输出将保持不变。) 链条应在所有接触点处都与链轮相切,并在其他任何地方笔直。链条应越过链轮,以使相邻的链段(即,两个链轮之间的链的一部分,在同一链轮上相遇)不会相交。 。 例如,虽然上面的左系统有效,但中间的系统无效,因为经过左下链轮的两个相邻链节相交。但是,请注意,正确的系统是有效的,因为两个相交的链段不相邻(不过,该系统由与其他两个不同的输入产生)。 为了使事情简单化,您可以假定没有链轮与其两个相邻链轮的凸包或每个邻居和另一个邻居的凸包相交。换句话说,下图中的上链轮不得与任何阴影区域相交。 链段可能与链轮相交,而不是与链轮相交(例如,在最后一个测试案例中)。在这种情况下,链条应始终出现在链轮的前面。 视觉要求 链条应包括一系列宽度互不相同的链节。窄链接的宽度应约为2,宽链接的宽度应约为5。两种类型的链接的长度应大致相等。该期链的宽/窄对的总长度应该是最接近4π的数字,该整数适合链长度的整数倍。例如,如果链的长度为1,000,则其周期应为12.5,这是最接近4π(12.566 ...)的数字,该整数适合1,000中的整数倍(80)。重要的是,该时间段必须在链长中适合整数倍,以便在链缠绕的点处没有伪影。 半径为R的链轮应包括三个同心部分:中心轴,其半径应为3左右;的链轮的身体,围绕轮轴,这应该是大约半径的圆- [R - 4.5; 和链轮的轮辋,在车身周围,半径应为 R -1.5。轮辋还应包含链轮齿,其宽度应约为4;齿的大小和间距应与链节的大小匹配,以使它们整齐地啮合。 链轮齿的周期,即沿链轮圆周的两个连续齿之间的距离,应与链条的周期匹配。由于周期大约为4π,并且由于链轮的半径保证是均匀的,因此该周期应适合链轮圆周的次数几乎为整数,因此在链轮的牙齿缠绕。 您可以对链条,链轮的不同部分和背景使用任何颜色组合,只要可以轻松区分即可。背景可能是透明的。本文中的示例 #202020用于链条, #868481链轮的轴和轮辋以及 #646361链轮的主体。 动画要求 输入列表中的第一个链轮应该顺时针旋转 ; 其余链轮应相应旋转。链条应以每秒约16π(约50个)单位的速度运动;帧速率取决于您,但是动画应该看起来足够平滑。 动画应无缝循环。 符合标准 某些视觉属性和比例是有意仅粗略指定的-您不必完全匹配它们。程序的输出不必是此处给出的示例的像素到像素的副本,但是它看起来应该相似。特别是,链条和链轮的确切比例以及链节和链轮齿的确切形状都是灵活的。 ...

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 

28
计算Phi(非Pi)
不,我不是说ϕ = 1.618...和π = 3.14159...。我的意思是功能。 φ(x)的是一个整数小于或等于的数量x互质到x。 π(x)是小于或等于的素数x。 假设“非pi”为π̅(x),并将其定义为小于或等于的复合数x。 任务 给定一个严格的正整数x,计算φ(π̅(x))。得分以字节为单位。 例子 每行包括输入(从1到100,包括1和100),以及由空格分隔的相应输出。 1 0 2 0 3 0 4 1 5 1 6 1 7 1 8 2 9 2 10 4 11 4 12 2 13 2 14 6 15 4 16 6 17 6 18 4 19 4 ...
73 code-golf  sequence  primes  number-theory  code-golf  decision-problem  code-golf  date  code-golf  typography  code-golf  math  number  multiple-holes  code-golf  quine  code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

15
画出欧元符号
目标是根据以下规范输出或显示带有€(欧元)符号的图像(忽略符号的边框)。 来源:http : //en.wikipedia.org/wiki/File : Euro_Construction.svg 规则: 程序/脚本必须将€符号的高度(以像素为单位)作为参数(符号周围的空白是可选的) 的€符号不能被绘制为或从字符,直接(它禁止print所述€图像中)或间接(计算8364然后在HTML页面显示它) 输出不需要保存到任何文件,可以显示然后将其显示为屏幕截图 禁止使用标准“漏洞” 最短的代码胜出

10
画出韩国国旗
当我偶然发现这个问题时,我想起曾经曾经看到过建造朝鲜国旗的确切规则。这是完全不同的构造。 资料来源:维基百科 所以,现在您要绘制此结构的确切结构! 规格 您可以使用矢量或光栅图形将标志呈现到文件或屏幕。如果对输出进行光栅化,则图像的尺寸必须为450x300像素或更大。 所有的长度比率和位置都必须完全如下图所示: 资料来源:维基百科 请注意,两个小圆圈的中心与对角线对齐。 对于颜色,必须使用以下调色板: 白色:#FFFFFF 黑色:#000000 红色:#C60C30 蓝色:#003478 除非您的绘图系统出于技术原因不允许您指定3:2画布,否则不得绘制黑色边界(否则,您应使用3:2画布,并且标记应填满所有画布)。如果确实需要添加边界,则边界可以任意厚-该标志应严格考虑在黑色边界内。不得绘制任何其他帮助线或长度指示器。即,该标志应与第一个图像完全相同。 计分 这是代码高尔夫球,因此最短的答案(以字节为单位)获胜。 值得一提的是,使用现有压缩(例如嵌入压缩的GIF)会陷入几个标准漏洞。

10
小钱德勒很伤心。画他的云,使他振作起来
小钱德勒很伤心。画他的云使他振作起来。 注意:画云实际上不会使他振作起来。 圆可以定义为三元组(x,y,r),其中x是圆在笛卡尔平面上的x位置,是圆在笛卡尔平面y上的y位置以及圆r的半径。x并y可能是负面的。r永远是积极的。输入是以空格分隔的三元组形式的圆的列表。例如: 3,1,1 3,2,1.5 1,2,0.7 0.9,1.2,1.2 1,0,0.8 的3,1,1意思是“在与中心点的圆3,1与1个半径。3,2,1.5是指”在与中心点的圆3,2用1.5半径。 如果我们在图形上绘制输入的所有这些圆,则看起来像这样(我仅出于清晰起见添加了网格线和标签;它们不是必需的): 注意所有的圆是如何凝聚的。也就是说,它们全部重叠在一起,从而形成一个大的组,而没有其他的小圈子。输入保证是内聚的。 假设现在绘制一条绕这些圆形成的“边界”行进的线,而没有其他任何线。就像绘制所有圆组成的轮廓的边界一样。生成的云看起来像这样: 因此,仅通过在输入中绘制形成边界的圆弧来形成单一形状即可形成此云。换句话说,仅通过绘制不在另一个圆内的圆弧来形成云。您的程序将以上述形式接受输入,并输出显示结果云的图像。云的整体形状必须正确,但是比例,颜色,线条粗细以及在顶点处的外观取决于您。请注意,云必须是可见的,因此您不能拉出类似“此程序在白色背景上绘制白色云”,“此程序以无限小的比例绘制云”,“此程序以0绘制云”之类的内容。线宽”等。还请注意,边框的颜色必须与填充或背景的颜色不同。 另一个例子。输入: 1,4,2 5,2,1 3,1,1 3.5,2,1.2 3,3,0.7 1,2,0.7 输出: 如果云中存在“洞”,则也应绘制该洞。输入: 0,5,4 3,4,4 4,3,4 5,0,4 4,-3,4 3,-4,4 0,-5,4 -3,-4,4 -4,-3,4 -5,0,4 -4,3,4 -3,4,4 输出: 这是一条重要规则:您的程序必须仅绘制形成边框的线。这意味着您不能简单地完全绘制圆,然后用白色填充将圆绘制得稍小一些,因为该方法仍会绘制不形成边界的线,之后只会将其覆盖。该规则的目的是防止“绘制圆,然后用白色填充再次绘制圆”的实现或类似的方法。预计答案将在绘制之前实际计算出绘制对象的位置。 这是代码高尔夫球,因此最短的字符数获胜。

30
我的三角形对吗?
给定a, b, c一个三角形的三个边的长度,请说该三角形是否为直角(即,一个角度等于90度)。 输入项 任何顺序的三个正整数值 输出量 无论是具体的真实输出(true,1,yes,...)或特定假输出(false,0,no,...) 例 5, 3, 4 --> yes 3, 5, 4 --> yes 12, 37, 35 --> yes 21, 38, 50 --> no 210, 308, 250 --> no 规则 输入和输出可以任何方便的格式给出。 在您提交的文件中,请注明正确和错误的值。 无需处理负值或无效的边缘三倍 完整的程序或功能都是可以接受的。如果是函数,则可以返回输出而不是打印输出。 如果可能,请提供一个在线测试环境的链接,以便其他人可以尝试您的代码! 禁止出现标准漏洞。 这是代码高尔夫球,因此所有常用的高尔夫规则都适用,并且最短的代码(以字节为单位)获胜。

9
建立一个没有任何三角形的三角形
小时候,我很喜欢玩这些玩具: 他们可能打算将它们用于艺术,但是我总是将它们用于数学!分形,图案等。有一次,我受到了挑战: 无需使用任何绿色三角形瓷砖即可构建一个三角形。 这个挑战困扰了我最长的时间,直到我偶然发现了一种仅用3个梯形来完成的真正美丽而简单的方法: /\ /_/\ /__\_\ 现在,取下这个三角形,然后旋转它: ______ \ \__/ \/ / \/ 使用这两个三角形,我们可以从中构造出更大的三角形。这是一个高度为2的三角形: /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ 这是高度为3-7的三角形: #3 /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ /\ \__/\ \__/\ /_/\/ /_/\/ /_/\ /__\_\/__\_\/__\_\ #4 /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ /\ ...

23
用笔触覆盖天际线
给定一个非负整数天际线高度列表,请回答需要多少不间断的1个单位高的水平画笔笔划来覆盖它。 [1,3,2,1,2,1,5,3,3,4,2],可视为: 5 5 4 3 5334 32 2 53342 13212153342 需要九个笔触: 1 2 3 4 5555 66 7 88888 99999999999 例子 [1,3,2,1,2,1,5,3,3,4,2] → 9 [5,8] → 8 [1,1,1,1] → 1 [] → 0 [0,0] → 0 [2] → 2 [2,0,2] → 4 [10,9,8,9] → 11

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 

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.