Questions tagged «code-golf»

Code-golf是在最小的源代码字节中解决特定问题的竞赛。

23
哪些鬼不见了?
在此挑战中,给定吃豆人的鬼魂列表,您必须输出缺少的鬼魂。您必须尽可能地减少字节数 输入项 输入将由字符串或列表组成,其中将包含数字重影,可能包括; 眨眼 墨黑 小指 克莱德 但是,输入也可能包括吃豆人(带有标点符号)。因此,列表中的最大项目数将为五个,以任何顺序排列。可以假设列表中没有无效项 输出量 输出将包含一个字符串或列表。这将以任何顺序包括所有不在输入中的幻影。但是,如果输入中包含吃豆人,则所有鬼影都将被视为丢失(因为他吃掉了它们)。 测试用例 input: Clyde output: Blinky, Inky, Pinky alternate output: Inky, Pinky, Blinky or one of the other 4 permutations input: Clyde, Blinky # or however you delimit it output: Inky, Pinky alt: Pinky, Inky input: Pac-Man, Clyde Output: Blinky, Inky, …
25 code-golf  string 

30
生成堆栈交换图标
您认识PPCG徽标吗?当您对其进行ascii艺术处理时,它看起来像这样。 +---+ |PCG| +---+ v 现在,在此Code Golf中,您将创建一个代码,该代码为其他站点制作徽标,类似于PPCG徽标。 你应该做什么 字符串“ Shortened”将是字符串,输入字符串中包含所有大写字母和数字。(PPCG当输入字符串为时Programming Puzzles & Code Golf) “盒子”( +---+ | | +---+ v )应该完全适合缩短的字符串。 同样,该v部分应该正好是1向下,左1是右下+。 然后输出其中包含缩短的字符串的框。 例 Stack Overflow: +--+ |SO| +--+ v Area 51: +---+ |A51| +---+ v 规则 您可以假定输入至少包含一个数字或大写字母。 适用标准代码高尔夫球规则。

10
在数组中弹跳
介绍 数组也可以看作是弹跳球的场。当然这听起来很模糊,因此这里是一个输入示例: [1, 2, 3, 4, 5, 6, 7, 8, 9] [9, 8, 7, 6, 5, 4, 3, 2, 1] [1, 2, 3, 4, 5, 6, 7, 8, 9] 挑战是输出退回的数组。这些是由对角线图案制成的,这些图案在视场边缘反弹。这条路朝上。第一个退回数组的路径(其中该路径直接从egde退回)为: [1, -, -, -, 5, -, -, -, 9] [-, 8, -, 6, -, 4, -, 2, -] [-, -, …

17
范德蒙行列式
给定一个n值向量,(x1,x2,x3,...,xn)返回相应范德蒙德矩阵的行列式。 该行列式可以写为: 细节 您的程序/函数必须接受允许可变长度的任何方便格式的浮点数列表,并输出指定的行列式。 您可以假设输入和输出都在您的语言支持的值的范围内。如果您的语言不支持浮点数,则可以采用整数。 一些测试案例 请注意,每当有两个相等的条目时,行列式将为0相应的Vandermonde矩阵中有两个相等的行。感谢@randomra指出了这个丢失的测试用例。 [1,2,2,3] 0 [-13513] 1 [1,2] 1 [2,1] -1 [1,2,3] 2 [3,2,1] -2 [1,2,3,4] 12 [1,2,3,4,5] 288 [1,2,4] 6 [1,2,4,8] 1008 [1,2,4,8,16] 20321280 [0, .1, .2,...,1] 6.6586e-028 [1, .5, .25, .125] 0.00384521 [.25, .5, 1, 2, 4] 19.3798828

12
产生惰性值
相关:对我的微波炉编程。受生成懒惰微波输入的启发。 非负整数N的惰性值是最接近N的整数中最小的,而它们的所有数字都相同。 返回(通过任何手段)的给定(通过任何手段)懒惰值Ñ。 ñ ≤ 你的语言代表了非指数形式默认的最大整数。1000000(由于此过高的要求,许多有趣的解决方案丢失了。) 测试用例: 0 → 0 8 → 8 9 → 9 10 → 9 16 → 11 17 → 22 27 → 22 28 → 33 100 → 99 105 → 99 106 → 111 610 → 555 611 → 666 7221 → 6666 7222 …

9
画一个ASCII码的房子
这是一个窗口: --- | | --- 让我们添加一些墙|。在其两侧各放两个空格,以便窗户有足够的空间。 | --- | | | | | | --- | 现在让我们添加一个屋顶和一个天花板。为了将窗户保持在房间中间,让我们在上方和下方再增加一行。 --------- | | | --- | | | | | | --- | | | --------- 现在,只需添加一个屋顶。将斜杠放在最左边,反斜杠放在最右边,这样: / \ --------- | | | --- | | | | | | --- | | …

22
查找每个字母开头的第一个单词
给定一个字符串,找到每个字母开头的第一个单词(不区分大小写)。 样品 使用Ferulas flourish in gorgeous gardens.的输入: "Ferulas flourish in gorgeous gardens." ^^^^^^^ ^^ ^^^^^^^^ | | | | | --> is the first word starting with `g` | --> is the first word starting with `i` --> is the first word starting with `f` 然后,此样本的输出应该是匹配的单词,并用一个空格隔开: "Ferulas in gorgeous" 挑战 …
25 code-golf  string 

14
斐波那契式矩阵展开
对于矩阵的每一行和每一列,我们可以添加一个额外的条目,并加上该行或列中最后两个条目的总和。例如,使用以下输入矩阵: [ 1 1 1 ] [ 2 3 4 ] 结果矩阵为: [ 1 1 1 2 ] [ 2 3 4 7 ] [ 3 4 5 9 ] 给定整数N的输入和大小至少为2x2的[X,Y]矩阵,请执行上述扩展N次并输出结果。生成的矩阵将始终为[X + N,Y + N]。 例子: Input: Output: 2, [ 0 0 ] [ 0 0 0 0 ] [ …

30
漂移排序数组
Driftsort是“排序”数组的一种简单方法。它通过“滑动”或“旋转”数组中的元素来工作,直到对数组进行排序或对数组进行排序失败为止。 让我们来看两个例子。首先,考虑array [10, 2, 3, 4, 7]。由于数组未排序,因此将其旋转一次。(这可以在任何方向上发生,只要它保持相同的方向即可。)然后,数组变为: [7, 10, 2, 3, 4] 这没有排序,因此我们再次旋转。 [4, 7, 10, 2, 3] 然后再次: [3, 4, 7, 10, 2] 最后一次: [2, 3, 4, 7, 10] 并排序!因此,该数组[10, 2, 3, 4, 7]是可漂移排序的。为了清楚起见,这是数组的所有旋转: [10, 2, 3, 4, 7] [7, 10, 2, 3, 4] [4, 7, 10, 2, 3] …

30
圆角Pi日快乐
为了庆祝“ Rounded Pi Day”,您必须利用今天的日期来制作一个程序,该程序将圆的直径乘以3.1416来获取圆的直径并输出其周长,其中必须使用今天的日期获得3.1416。 Input 3 Output 9.4248 etc. 不将日期作为输入。您不必使用日期的所有组成部分,但是pi的数字必须来自格式化Date对象或使用日期对象来获取它。到目前为止的答案看起来不错。 不知道还要指定什么。到目前为止,所有答案都符合我的期望。 我的约束是您必须使用日期的组成部分来提出Pi。您当然可以使用这些组件,乘以0,然后添加3.1416,但这很无聊,而且浪费了宝贵的字符! 最短的代码胜出!

23
实施7分频规则
要检查十进制数是否可以被7整除: 删除最后一位。将其乘以2并从剩余的值中减去。如果结果可被7整除,则原始数字可被7整除。 (例如也在此处描述) 此规则适用于手动除数检查。例如: 2016年是否可以被7整除? 减去6*2201;我们得到189。这是否可以被7整除?要检查它,让我们再次应用规则。 减去9*218;我们得到0。因此,2016被7整除。 在此挑战中,您应应用此规则,直到可分割状态明显,即该数字不大于70(但是,请参阅下面的详细信息)。制作功能或完整程序。 输入:正整数;您的代码应支持最多32767的输入(支持任意精度整数是一个加分项;请参见下文)。 输出:不大于70的整数(可能为负数),这是将7除数规则应用零次或更多次的结果。 测试用例: Input Output Alternative output 1 1 10 10 1 100 10 1 13 13 -5 42 42 0 2016 0 9 9 99 -9 9999 -3 12345 3 32767 28 -14 ---------- Values below are only relevant for the …

6
画五角星
首先...我要祝大家圣诞快乐(对不起,如果您所在的时区迟到了一天,对不起)。 为了庆祝这一时刻,我们将绘制雪花。因为年份是201 5,圣诞节是2 月5日(对于大多数人来说),所以我们将绘制一个Penta薄片。五角形是由五边形组成的简单分形。以下是一些示例(从此处获取): 每个Pentaflake都有一个n阶。0阶五角星只是一个五边形。对于其他所有n阶,五角大楼由5个前阶五角星组成,它们围绕前一个阶的6个五角星排列。例如,1级五角星由围绕中央五边形排列的5个五边形组成。 输入项 该命令n。除预定义变量外,可以任何方式给出。 输出量 n五角大楼订单的图像。必须至少为100px宽和100px长。它可以保存到文件,显示给用户或输出到STDOUT。不允许任何其他形式的输出。允许此挑战之前存在的所有图像格式。 获奖 作为codegolf,字节数最少的人获胜。

20
几点钟了?
在我的房间里,我有一个怪异的时钟(点击放大): 其中大多数都不难弄清楚,但是4点钟的时钟特别棘手: 通常,在模数运算中,像1/2这样的分数没有意义,因为仅涉及整数。因此,正确的方法是将其视为2 的倒数,或者换句话说,将其视为其中的数字。如此说来,片刻的想法就会揭示出,因为。 但是,简单地找到乘法逆就太困难了。因此,让我们提高求幂的难度,换句话说,找到2的模对数或离散对数。在这种情况下,3是2相对于7的模对数。对于那些拥有数论/抽象代数的人背景,这意味着计算2模n的乘法阶。 挑战 给定一个正奇整数n大于1,输出最小的正整数x,其中。 例子 n x 3 2 5 4 7 3 9 6 11 10 13 12 15 4 17 8 19 18 21 6 23 11 25 20 27 18 29 28 31 5 33 10 35 12 37 36 39 12 41 20 …

3
xu ti te gismytermorna?(这是有效的gismu吗?)
(从字面上看:“这是否遵循/实现了gismu -form?”) 前提 Lojban语言是一种构造语言,部分意味着其所有单词都是被创造的,而不是自然发展的。Lojban的语义基础是其gismu或词根词,它们是通过组合来自广泛使用的自然语言(如中文,印地语和英语)的词根而合成的。所有gismu的长度均为5个字母,并遵循一定的严格格式。 信息 就我们的目的而言,罗伊班字母是: abcdefgijklmnoprstuvxz 也就是说,罗马字母不带hqwy。 该字母可以分为四类: 元音 aeiou 辅音辅音 lmnr 清音辅音ptkfcsx。发出声音时,它们分别成为... 浊辅音bdgvjz(没有对应的浊辅音x。) 要成为有效的gismu,长度为5个字符的字符串必须: 在子音元音模式CVCCV或中CCVCV,其中C表示辅音,V表示元音。 遵循辅音匹配规则。 CCVCV单词的辅音匹配规则: 前两个字符必须构成以下48个对之一(源): ml mr pl pr bl br tr tc ts dr dj dz kl kr gl gr fl fr vl vr cl cr cm cn cp ct ck cf jm jb …

5
解析二维语法
背景 爱丽丝(Alice)和鲍勃(Bob)正在创造一种高尔夫语言,以赢得每一个PPCG挑战。爱丽丝想制作一种二维语言(如> <>),但鲍勃(Bob)更喜欢像J中那样的前缀-前缀语法。作为一种折衷,他们决定创建一种二维前缀-前缀语言。解析器很难编写,他们需要您的帮助! 语法规范 在Alice和Bob的语言中,有变量(由小写ASCII字母表示a-z)和函数(由大写ASCII字母表示)A-Z。可以使用一个或两个参数来调用一个函数。一个方案是字母矩形网格a-zA-Z和空间,以及左上角不能包含空格。这是一个有效程序的示例: F Gy H R x 解析程序后,它将转换为C风格语言(C,Java,Python ...)的表达式,其中包含单字母变量和函数调用,格式为<func>(<arg>)或<func>(<arg1>,<arg2>)。例如,上面的程序产生以下表达式: F(H(R(x)),G(x,y)) 解析过程的详细信息如下: 这些空格只是填充符,因此不会被解析。 每个变量a-z始终被解析为自身。 每个函数都A-Z被解析为一个函数调用。它的参数是它下面和右边在网格中最接近的表达式(按此顺序)。如果仅存在其中之一,则将其作为唯一参数。您可以假设所有函数在网格中至少有一个参数。 在上面的示例中,变量x和y被解析为自身。该函数在其R下方和x右侧没有任何内容,因此将其解析为单参数调用R(x)。同样,由于位于下方,因此H被解析为。该功能具有以下,并在其右侧,所以它解析为,和类似的。左上角解析的表达式是解析过程的结果。H(R(x))RGxyG(x,y)F 输入输出 您的输入是一个非空的矩形字符数组。它始终是Alice和Bob语言的有效程序,但是它可能包含未在输出中使用的表达式。您的输出应为上述过程产生的解析表达式。 规则和计分 您可以编写功能的完整程序。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 这些以格式提供grid <newline> expression,大小写---之间带有连字符。SE格式将某些行留空,但应使用空格填充。 x x --- x y z x --- Fx F(x) --- Fx y F(y,x) --- ABu A(B(u)) --- G H k G(H(k)) --- ABCA …

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.