Questions tagged «code-golf»

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

1
FIFO缓存异常
这是从随访挑战这一个,如果你困惑,请首先检查一出。 首先,假设为高速缓存未命中的次数,假设我们的高速缓存具有容量k并在充满时使用先进先出(FIFO)弹出方案,那么资源访问序列s就会丢失。m (s ,k )m(s,k)m(s, k)sssķkk 然后给定的比率,返回资源的访问的一个非空序列小号使得存在ķ > Ĵ与米(小号,ķ )≥ [R ⋅ 米(小号,Ĵ )。r>1r>1r > 1sssk>jk>jk > jm(s,k)≥r⋅m(s,j)m(s,k)≥r⋅m(s,j)m(s, k) \geq r \cdot m(s, j) 用简单的英语,构建一个序列资源的访问,从而有二级缓存的大小,其中较大的高速缓存有(至少)[R倍以上用于解决在高速缓存未命中小号。sssrrrsss 为一个例子,有效输出是序列(3 ,2 ,1 ,0 ,3 ,2 ,4 ,3 ,2 ,1 ,0 ,4 ),因为它会导致9个为高速缓冲存储器大小的高速缓存未3,但是10次未命中,高速缓存大小为4。r=1.1r=1.1r = 1.1(3,2,1,0,3,2,4,3,2,1,0,4)(3,2,1,0,3,2,4,3,2,1,0,4)(3, 2, 1, 0, 3, 2, 4, 3, 2, 1, 0, …

5
ASCII螺旋线间隔良好
考虑这个螺旋 ########### # # ####### # # # # # ### # # # # # # # # # # # # # # # # ##### # # # ######### 从中心出发: 第一行(向上)包含3个字符。 第二行的字符数相同(3) 接下来,在接下来的两边添加两个字符(5)。 此模式继续,两个边的长度相同,然后将长度增加2。 我想为N条线生成此螺旋线。 用任何语言写。 输入/参数等是螺旋中的行数。 每行以上一行的顺时针方向90度方向从上一行的结束字符开始。 我不在乎每行之前或之后有多少空格,只要螺旋的元素排成一行即可。 输出文本以使用您选择的任何非空白字符绘制螺旋。 尝试以最少的字节数执行此操作。 测试用例(使用哈希作为输出): N = 1 # # …

12
小拉姆齐数
背景:Ramsey数R (r ,s )R(r,s)R(r,s)给出的顶点的最小数目vvv的完全图ķvKvK_v,使得红色/蓝色边缘的着色ķvKvK_v具有至少一个红ķ[RKrK_r或一个蓝色ķsKsK_s。对于较大的边界[R ,小号r,sr, s是很难建立。 你的任务是输出数R (r ,s )R(r,s)R(r,s)为1个≤ [R ,s ^ ≤ 51≤r,s≤51 \le r,s \le 5。 输入值 两个整数[R ,小号r,sr, s用1 ≤ [R ≤ 51≤r≤51 \le r \le 5和1 ≤ 小号≤ 51≤s≤51 \le s \le 5 。 输出量 R (r ,s )R(r,s)R(r,s)表中给出的 R (r ,s ): s 1 …

6
高尔夫球链(警察线)
这是警察和强盗的挑战。有关强盗的线索,请转到此处。 警察有三个任务。 1)从OEIS中选择一个序列。 2)选择一种语言(建议这是一种golflang语言,但不一定要这样),当使用所有常用的代码高尔夫规则给定input n,output A(n)(A(n)选择的顺序在哪里)时。 把这种语言大号一个和代码Ç 一个。 例如,Jelly和Jelly_code。 3)然后,选择另一种语言(建议这是一种非golang的语言,但不一定非要这样),并再次遵循所有常见的代码高尔夫规则,编写无需输入并输出代码C A的代码。(注:这可以混淆代码,不一定需要被golfed,但较长的这段代码是越容易成为劫匪破解您的提交) 调用此语言大号乙和代码Ç 乙。 例如,Python和Python_code。 警察对此挑战的服从是顺序(指定索引是0还是1),两种语言L A和L B的名称(以及哪一种可以解决哪一部分)以及仅C B的字节数。保留这两部分的实际代码以及C A的长度。 对于Cop,赞赏但不要求链接到L A和L B的文档或解释器(或TIO链接,因为包括两者)。 强盗的挑战是选择一个警察的条目,并以相同的L B语言编写代码C C,然后以解决原始OEIS任务的相同L A语言输出一些代码。C P的长度可以不大于警察所揭示的C B的长度(尽管可以更短)。注:所生产的代码Ç Ç并没有要匹配Ç 一个。 在我们的例子,这意味着强盗必须写的Python输出代码果冻代码一种解决原始OEIS序列,并且的Python代码必须不长于长度揭示缔约方会议。 获奖条件 一周内没有被破解的答案可以揭示其解决方案,这时它们被认为是安全的。请注意,如果一周后没有透露解决方案,那么它仍然可能会被破解。安全答案最短的警察胜出。

12
字符串和数字的乐趣
这是给您的编程难题: 例如,给定一对字符串和对应数字的[[A,37],[B,27],[C,21],[D,11],[E,10],[F,9],[G,3],[H,2]]列表,请输出另一个列表,该列表将仅以以下方式包含字符串: 任何字符串的总计数应完全等于输入数据中其对应的数字。 不应在序列中相邻重复任何字符串,并且每个字符串都应出现在输出列表中。 只要不超过两个规则,就应该随机选择下一个字符串。每个解决方案的选择概率均应为非零。 如果无法组合,则输出应为just 0。 输入列表可以以任何顺序(排序或未排序)给出,列表中的字符串可以具有任何长度。 上述样本输入1的样本输出 [A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,B,A,C,A,C,A,C,A,C,A,C,A,C,A,C,A,C,A,C,A,C,D,C,D,C,D,C,D,C,D,C,D,C,D,C,D,C,D,C,D,C,D,C,E,F,E,F,E,F,E,F,E,F,E,F,E,F,E,F,E,F,E,G,H,G,H,G] 输入样本2: [[A,6],[B,1],[C,1]] 第二个输入的输出: 0 因为根据规则无法列出。 样本输入3: [[AC,3],[BD,2]] 有效输出: [AC,BD,AC,BD,AC] 无效的输出: [AC,BD,AC,AC,BD] 如果需要进一步澄清,请随时在评论中告诉我,我将立即采取行动。 这是代码高尔夫球,因此每种语言的最短代码以字节为单位!

4
广义格雷码
输入:由k个正整数组成的数组I。整数将不大于100且k≤100。 输出:您的代码必须输出所有可能的阵列ö长度的非负整数的ķ其限制是0≤ö 我 ≤我我。要从一个数组到下一个数组,您可以在数组中的一个值上加上或减去1。您的代码不得两次输出相同的数组。如果要输出的不同数组的数量很大,那么您的代码应该一直持续输出直到被杀死为止。 例子 如果我是一个k个数组,那么这就是迭代所有宽度为k的格雷码的问题,除了第一个和最后一个元素不需要一步就可以到达。 如果I = [2,1]这样,则输出数组的一种可能的排序是(0,0),(0,1),(1,1),(1,0),(2,0),(2,1) 如果I = [2,1,3]是,则输出数组的一种可能的排序是(0,0,0),(0,0,1),(0,0,2),(0,0,3),(0,1,3),(0,1,2),(0,1,1),(0,1,0),(1,1,0),(1,1,1),(1,1,2),(1,1,3),(2,1,3),(2,1,2),(2,1,1),(2,1,0),...。 这是一个代码挑战,用最短长度的源代码提交是成功的。不要让打高尔夫球的简短答案阻止您发布其他语言的答案。尝试用任何一种语言给出最短的答案。 这也是限制复杂性的挑战。从前一个输出数组(或第一个输出数组的程序开始)开始,每个新数组的输出都应经过O(k)时间。这意味着每个新输出数组(它们各自的长度为k)的运行时间不应大于O(k)。也就是说,应该花费与k成比例的时间,而不是例如k 2或2 k。注意,这不是每个输出的平均时间,而是每个输出阵列的最坏情况时间。 您可以假定对64位整数的所有算术可以在恒定时间内执行,就可以读取和输出它们,以及赋值,查找和更改数组中的值。 限制复杂度的结果之一是仅在程序退出时输出的解决方案是不可接受的。

30
从原动力中恢复原动力
定义:素数幂是自然数,可以以p n的形式表示,其中p是素数,n是自然数。 任务:给定素数p n > 1,返回素数p。 测试用例: input output 9 3 16 2 343 7 2687 2687 59049 3 计分:这是代码高尔夫球。以字节为单位的最短答案将获胜。
13 code-golf  arithmetic  primes  king-of-the-hill  python  board-game  code-golf  number  subsequence  code-golf  ascii-art  code-golf  array-manipulation  decision-problem  grid  fastest-algorithm  logic-gates  logic  code-golf  cards  code-golf  rational-numbers  code-golf  math  number  sequence  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  code-golf  number  sequence  decision-problem  code-golf  ascii-art  number  code-challenge  sequence  arithmetic  sorting  code-golf  date  fastest-algorithm  code-golf  string  number  random  combinatorics  code-golf  combinatorics  code-golf  ascii-art  base-conversion  code-golf  array-manipulation  code-golf  string  code-golf  string  number  arithmetic  code-golf  kolmogorov-complexity  code-golf  string  array-manipulation  json  code-golf  puzzle-solver  code-golf  binary  graph-theory  code-golf  arithmetic  haskell  code-golf  string  cipher  code-golf  code-golf  string  parsing  alphabet  code-golf  string  code-golf  ascii-art  code-golf  string  number  code-golf  string  balanced-string 

13
分组数组数据
给定一个整数矩阵a和一个非负整数i,输出的映射b,所述不同值映射在i的列a到列a谁具有在该值i列。 您可以假定该i值在半开范围内[0, num_cols(a))(或者[1, num_cols(a)]如果您选择使用基于1的索引),并且所有整数都在您的语言可表示的范围内。只要满足挑战的基本要求即可进行输入和输出(2D数组->从int到int的2D数组的映射)。只要映射清晰且一致,就不需要在输出中包含键。 例子 [[1]], 0 -> {1: [[1]]} [[3, 4, 5], [1, 4, 2], [5, 5, 5], [7, 7, 7], [1, 5, 9]], 1 -> {4: [[3, 4, 5], [1, 4, 2]], 5: [[5, 5, 5], [1, 5, 9]], 7: [[7, 7, 7]]} [[1, 2, 3, 4, 5], …

7
一堆重物
挑战: 您将获得一堆重物的ASCII图像作为输入,并且必须输出一堆重物的组合重量。 格式: 共有5种不同的砝码,分别为1、2、5、10、20 个 Passerees(或其他任意单位)。 权重如下所示,按升序排列: 1: __ |__| 2: ______ |______| 5: ______ | | |______| 10: ______________ | | |______________| 20: ____________________ | | |____________________| 称重将对称放置(如示例图像中所示),而不必按排序顺序放置。称重将共享边界,如果适用: 测试用例: 您也可以将所有单个权重用作测试用例。 __ _|__|_ |______| | | |______| 1 + 2 + 5 = 8 ____________________ | | |____________________| | | …

3
单词搜索求解器
我昨天想知道我是否可以编写一个程序来梳理给定的单词搜索并输出答案。实际上,这非常简单。现在我想知道我们能得到多小。 规则 您的第一个输入是一个字符串或n行的集合,每行长度为n个字符 您的第二个输入是要在拼图中找到的任何格式的单词列表 搜索列表中的所有单词都一定会在拼图中 单词可以在四个基本方向中的任何一个方向上定位,也可以对角线前后移动 拼图中仅包含大写AZ字符 您的代码必须找到搜索字符串中的每个单词,并输出起始字母的坐标位置,其中0,0是左上角的字符。 如果您找到同一单词的多个实例,则可以根据需要进行处理。多次输出或仅输出一次,由您决定 示例/测试用例 鉴于以下董事会: ABCD EFGH IJKL MNOP 以及以下搜索字符串: ABCD,CGKO,POMN,NJF,AFKP,CFI,LGB,MJGD 您的程序应以任何顺序输出以下内容: ABCD at 0,0 CGKO at 0,2 PONM at 3,3 NJF at 3,1 AFKP at 0,0 CFI at 0,2 LGB at 2,3 MJGD at 3,0 一如既往,最短答案胜出

1
所有的光所有的光所有的光!
在Soulgit Games开发的All Light 启发下,这项挑战已完全消除。 挑战 您是一名电工,将所有灯连接到电池是您的工作。 灯和电池布置在网格中。 您可以将灯或电池连接到最近的灯或电池,将其连接到其北,南,东和西。 电池可以有任意数量的连接。 每个指示灯指定需要多少个连接。你必须准确到光,许多连接。 您可以在两个灯(或灯和电池)之间创建单连接或双连接。 电线不能交叉。 每个灯和电池之间必须有一条路径。 保证至少存在一个有效的解决方案。 给定电池和每个灯的位置以及每个灯所需的连接数,请输出它们之间允许这些属性的连接。 获胜条件 这是代码高尔夫球,因此每种语言中最短的代码将获胜。 测试用例 I / O像往常一样灵活。 对于输入,我将使用网格大小的二维数组,该数组存储灯光的正整数,空白的零和电池的-1。另一个好的选择可能是灯列表,其中灯是一个包含灯的位置和所需连接数的元组。 对于输出,我将使用连接列表,其中连接是包含开始位置和结束位置的元组。如果连接加倍,则列表中将有2个(另一个选项是在元组中包含此参数)。另一个不错的选择可能是某种网格布局。 如果使用坐标系,则可以指定起始索引以及从中开始索引。我的示例将使用0索引,并使用(0,0)作为左上角(行,列)。(我使用{}只是为了引入另一种定界符,因此更容易阅读,而不是因为它们是集合。) 这是测试用例的图形视图:测试1-12 测试1: [-1 | 0 | 1 ] => [{(0, 0), (0, 2)}] 测试2: [-1 | 0 | 2 ] => [{(0, 0), (0, 2)}, {(0, …
13 code-golf 

26
简单的高尔夫口译员
挑战: 您的工作是为一种简单的高尔夫语言创建一个简单的解释器。 输入: 输入将采用以空格分隔的字符串形式。 您可以用所需的空格代替空格 输出: 输出执行所有操作后获得的结果(数字或字符串)。如果有多个输出,则将在一起将得到一个结果(没有分隔符)。变量的初始值始终为零。即:它开始于0 语言语法: 该语言具有以下运算符: inc ---> add one to variable dec ---> remove one from variable mult ---> multiply variable by 2 half ---> divide the variable by 2 Pri ---> print the variable to console (or whatever your language has) exit ---> end the …

7
迷宫中的切点
迷宫以任何方便的格式表示为0(墙壁)和1(可步行空间)的矩阵。每个单元都被视为连接到其4个(或更少)正交邻居。阿连接成分是一组可行走单元中的所有传递地彼此连接的。您的任务是确定切入点 -可行走的单元格,如果将它们变成墙壁,将改变连接的组件数。仅在这些位置输出带有1-s的布尔矩阵。我们的目标是用最少的代码字节做到这一点。 输入矩阵将至少包含3行和3列。它的至少一个单元将是一堵墙,至少一个将是可步行的。您的函数或程序必须能够在一分钟内在TIO上(或在您自己的计算机上,如果TIO不支持该语言)处理下面的任何示例。 in: 11101001 11011101 00000001 11101111 11110101 00011111 10110001 11111111 out: 01000000 00001001 00000001 00000101 00110000 00010000 00000000 11100000 in: 1111111111111111 1000000000000001 1111111111111101 0000000000000101 1111111111110101 1000000000010101 1011111111010101 1010000001010101 1010111101010101 1010101111010101 1010100000010101 1010111111110101 1010000000000101 1011111111111101 1000000000000001 1111111111111111 out: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 …

13
算术循环
输入: 整数n,其是>=0或>=1(f(0)可选) 输出: n以下序列中的第'个数字,或直到第n'个数字并包括第一个数字的序列。 顺序: (0),1,-1,-3,0,5,-1,-7,0,9,-1,-11,0,13,-1,-15,0,17,-1,-19,0,21,-1,-23,0,25,-1,-27,0,29,-1,-31,0,33,-1,-35,0,37,-1,-39,0,41,-1,-43,0,45,-1,-47,0,49,-1,-51,0,53,-1,-55,0,57,-1,-59,0,61,-1,-63,0,65,-1,-67,0,69,-1,-71,0,73,-1,-75,0,77,-1,-79,0,81,-1,-83,0,85,-1,-87,0,89,-1,-91,0,93,-1,-95,0,97,-1,-99 这个序列如何建立? f(n=0) = 0(可选) f(n=1) = f(0) + n或其他f(n=1) = 1 f(n=2) = f(1) - n f(n=3) = f(2) * n f(n=4) = f(3) / n f(n=5) = f(4) + n 。 或使用伪代码: function f(integer n){ Integer result = 0 Integer i = 1 …

6
RGB到Xterm色彩转换器
256色Xterm兼容终端在通常的16种系统颜色之上增加了240种颜色。颜色16-231使用6级(0、95、135、175、215、255)红色,绿色和蓝色(按字典顺序排列)。颜色232-255仅是24级灰度(8 ... 238 x 10s)。要更好地了解我在说什么,请参阅此表。 挑战 您的目标是制作一个程序或函数,将rgb值作为输入,并输出与该rgb值最接近的Xterm颜色对应的数字。由于通常可以自定义16种系统颜色(颜色0-15),因此您将无法将它们从此转换中排除。 为了更好地定义“最接近的”颜色是什么,请沿红色,绿色和蓝色分量使用曼哈顿距离。例如,rgb(10, 180, 90)距离rgb(0, 175, 95)(颜色35)20个单位abs(10 - 0) + abs(180 - 175) + abs(90 - 95) == 20。如果输入颜色等于两个或多个Xterm颜色,则输出具有最高索引的Xterm颜色。 例子 R G B Xterm 0 0 0 ==> 16 95 135 0 ==> 64 255 255 255 ==> 231 238 238 238 ==> 255 90 …
13 code-golf  color 

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.