Questions tagged «code-golf»

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

2
蒸汽朋克:Clacker动画
在被低估的蒸汽朋克小说《差异引擎》中,相当于电影院的房屋提供了由砖块显示的像素化运动图像,可以通过机械方式翻转。协调这些磁贴的运动的控制引擎是一台大型噪音机,由一副打孔卡控制。 您的任务是模拟这样的引擎并显示输入文件指定的像素化动画。输入由固定宽度格式的行组成,但是您可以假定任何方便的行尾指示。格式为: SSSSYYxxXXOA SSSS: 4 digit sequence no. may be padded by blanks or all blank YY: the y coordinate affected by this line (descending, top is 0, bottom is m-1) xx: the starting x coordinate XX: the ending x coordinate O: hexadecimal opcode A: argument (0 or 1) 输入是明确排序的(如果您将一副纸牌放在地板上,这部分我将非常感谢)。这意味着程序必须使用序列字段作为排序键对输入行执行稳定的排序。具有相同序号的行必须保持其原始相对顺序。(如果您将实际的行号附加到键上,则它应该与不稳定的排序一起使用。)空白序列字段应解释为小于任何数字(ascii排序序列)。 …

16
给我位宽n的格雷码列表
格雷码是一系列的位宽二进制数字,n其中连续数字仅在一位中有所不同(请参见示例输出)。 参考 输入示例: 3 输出示例: 000 001 011 010 110 111 101 100 笔记: 这个问题似乎有欺骗,但它不是,对于这个问题是不是代码高尔夫球场,它需要不同的输出。不过,这将有助于检查答案。 您可以假定n包含输入的变量。
11 code-golf  binary 

3
从头开始输出固态PNG
输入:RGBA十六进制颜色c(例如FFFF00FF)和大于0且小于1000的整数n(例如200)。 输出:PNG文件的原始字节,以便在将输出保存到文件并在图像查看器中打开时,显示填充有颜色的n按n图像c。 规范:您的程序应准确输出: PNG标头(89504E470D0A1A0A十六进制) IHDR包含以下规范的块: 宽度:上一个输入 n 高度:上一个输入 n 位深度:8(RGBA) 颜色类型:(6带有Alpha的Truecolor) 压缩方式: 0 过滤方式: 0 隔行扫描方法: 0 一个或多个IDAT包含图像数据的块(先前输入的彩色实心图像c);可能被压缩或未压缩 一个IEND图像结束区块 有关更多详细信息,请访问Wikipedia,W3网站或通过Google搜索。 限制条件: 您不得使用任何用于处理任何类型图像的图像库或功能。 您的程序必须在3分钟内运行,并为所有输入输出10 MB以下的文件(完整性检查)。 这是代码高尔夫球,因此最短的代码(以字节为单位)将获胜!

2
X大于3,且X和Y之间至少相差2
我试图打败一些C ++。是否可以使这种情况更短? X > 3 & X - Y > 1 (当然,除了删除空白。) 所以,X至少4,但X >= Y + 2。 X和Y是[0,5]间隔中的整数。 我试图找到一些按位公式,但失败了。
11 code-golf  number  tips  c++  code-golf  popularity-contest  obfuscation  code-golf  c  code-golf  board-game  hexagonal-grid  code-golf  game  grid  code-golf  number  permutations  popularity-contest  math  graphical-output  number-theory  king-of-the-hill  code-challenge  compression  code-challenge  fastest-code  code-golf  math  ascii-art  animation  code-golf  popularity-contest  generation  counting  fastest-code  fastest-code  popularity-contest  image-processing  king-of-the-hill  code-golf  conversion  binary-tree  code-golf  math  number  rational-numbers  division  code-golf  restricted-source  hashing  atomic-code-golf  logic-gates  code-golf  function  code-challenge  puzzle-solver  ai-player  test-battery  popularity-contest  music  compression  code-golf  number  stack  atomic-code-golf  logic-gates  ascii-art  popularity-contest  code-golf  date  grid  code-challenge  game  code-golf  parsing  code-golf  math  geometry  sequence  popularity-contest  code-trolling  code-golf  string  restricted-source  code-golf  quine  king-of-the-hill  code-golf  math  code-golf  simulation  code-golf  ascii-art  code-challenge  sorting  optimization 

5
算法编织-母亲节
任务: 您的任务是创建一个程序,当给定一定数量的股线和编织层的迭代次数时,该程序将告诉每个股线的去向。规则如下: 股数始终为奇数,介于3到6000之间(含) 当您开始时,这些股将被分成2个(几乎)相等的束,left和和right。left当您开始时,它会多一束。 输入7: / / / / \ \ \ 1 2 3 4 5 6 7 每次迭代时,具有更多线束的一侧的最外面的线束将放置在面向相反方向的中心。中心定义为相对的股线之间:////middle\\\。 输入7的1次迭代(链1已移至中心): / / / \ \ \ \ 2 3 4 1 5 6 7 例: 输入: 3 4 计算方式: 1 2 3 \ 2 1 3 / 2 3 …
11 code-golf 

13
无指向的说出顺序
您也正在制作一个程序,该程序以整数作为输入,并首先输出该数字与外观和说话顺序相同的数字。 例如: $ ./LAS 8 [1,11,21,1211,111221,312211,13112221,1113213211] 只要用户可以清楚地看到序列的不同编号,输出列表的确切方法就无关紧要。不过这里是要抓住的地方。您不能使用任何类型的用户定义变量。 例如: 没有变量,包括范围变量。 具有功能时,它们不能具有名称。(例外,如果您的语言需要主要功能或类似功能,则可以使用该功能。) 当您具有函数时,它们不能具有命名参数。 另外,您可能无法使用具有与外观和说话顺序相关的特定功能的库,并且无法访问网络,也无法为程序提供任何文件(尽管它可以生成并使用自己的文件。)这是代码高尔夫,字符中最短的代码将获胜!

5
运行蒙蒂·霍尔问题
关于模拟Monty Hall问题已经存在一个问题。这是不同的。该用户将播放的蒙提霍尔问题。您的程序将扮演主机的角色。Montybot,如果您愿意。 步骤如下: (随机)选择三个门中的哪个隐藏奖品。 输出三个门的视觉显示。一个简单的ABC会做。或三个方块。管他呢。 接收选择其中一扇门的输入。这可以是在所选门上单击鼠标,单个字母输入(B)或其他方式。 打开另一扇门。您没有打开所选的门。您不会打开隐藏主要奖金的门。那可能意味着您别无选择,或者可能意味着您有两个选择。如果您选择两个,则随机选择一个。直观地表明门已经打开,并且没有任何奖金藏在门后。对于基于程序文本的输入/输出,这可能与output一样简单AB0,以显示门C已打开。随时更具创造力。如果您正在执行GUI程序,则显示选择取决于您。 接受来自用户的输入。用户可以输入stick或switch(或对于GUI程序,单击按钮,或使用选择输入,或其他)。如果用户输入的不是stick或switch,则实现未定义。做你想做的。 输出文本You won!或You lost。 终止程序。 规则: 当您必须随机选择某物时,不必担心密码随机性。任何rand()功能都可以。 该程序不得作弊。奖品必须在比赛开始前就位。也就是说,必须按照给定的顺序执行这些步骤:首先选择一扇门,在后面隐藏您的奖金,然后请玩家选择。必须在步骤4中选择在步骤4中打开哪扇门:事先未选择。 步骤6中的输出必须诚实。 这是代码高尔夫。最短的代码获胜。
11 code-golf 

1
在“三消”游戏中找到最佳即时动作
今天的挑战是要像这样输入信息: fbcfbee ffcabbe debceec bccabbe edcfbcd daeaafc eebcbeb 并在类似“宝石迷阵”的游戏中输出可能的最佳动作,该动作将匹配三个或更多字母,如下所示(请注意大写字母B和C): fbcfbee ffcabbe deBCeec bccabbe edcfbcd daeaafc eebcbeb 完整规格: 输入将是每n行n小写字母(n可以是任何数字)。 输出将是您在三消游戏中可以采取的最佳举措,其中两个您想交换的字母都大写。 匹配项应具有以下优先级(在这些示例中,.表示无关紧要的正方形): 一排五 xxYxx ..X.. 断五行 X.. Yxx x.. x.. 要么 .X. xYx .x. .x. 四排 xYxx .X.. 三排 xYx .X. 您必须找到最高优先级的匹配并输出。 如果存在多个具有相同优先级的匹配项,则可以输出其中任何一个。 总会有至少一场比赛(如果没有比赛,或者您想做任何事情,您的程序可能会中断)。 I / O可以采用任何合理的格式(stdin / out,读写文件,函数自变量/返回值,对话框等),但不可以进行硬编码(如x="[insert input here]")。 这是代码高尔夫球,因此以字节为单位的最短代码获胜。如果您出于某种原因使用任何网络访问,则从网络下载的所有字节都将计入您的分数。
11 code-golf  game 

5
欧拉前线9
欧拉计划(Project Euler)是另一个有趣的编程挑战网站,可以进行比赛(好玩)。早期的问题起初很温和,但随后的困难却激增至最初的一百多个左右。前几个问题在查找素数,倍数和因数之间具有一些共性,因此可能会有一些有趣的代码微重用的机会可以使用。 因此,编写一个无需先验知识即可解决前9个问题中的任何一个的程序。 用户通过调用时的参数或运行时的标准输入,由用户选择ASCII(1到9)(包括ASCII)从1到9。(您可以计算所有答案,但只能显示一个。) 正确答案必须使用ASCII以10为底的新行打印。 程序应在不到一分钟的时间内执行(建议使用PE)。 通过“无先验知识”,我的意思是你的代码必须获得答案,而无需外部资源‡。像这样的程序将被认为是无效的(不过,如果我没有打错,还是正确的): print[233168,4613732,6857,906609,232792560,25164150,104743,40824,31875000][input()-1] ‡对于问题8(涉及1000位数字),您可以从外部文件中读取该数字,只需指定其存储方式(例如,二进制,文本,标头,导入的模块)和/或将其包含在您的答案中(不计入主程序的长度)。 分数按字节计。 2周后,字节计数的领导者获得了15个Unicorn Points™奖励。
11 code-golf  math 

6
飞镖遇到Codegolf
我认为每个人都熟悉飞镖,有些人不了解飞镖的得分,因此对于这些人来说,这是一个有用的链接。 董事会 飞镖可以比作20块的馅饼。每件分为4个部分。 一个称为double的小外圈(点x2) 一个叫做单环的大环(点数x1) 另一个称为三重的小环(点数x3) 另一个称为单环的大环(点x1) 板子中间还有两个环,一个绿色和红色(经典板子) 红色圆环,板的中心称为“靶心”或“双头牛”,有利于50分。这是一个双数,因此允许与它结帐。 绿圈,称为多头,单头公牛或简称25,算作单头。 挑战 查找3支或更少的飞镖的所有结帐可能性。 用户可以输入一个整数,您将必须检查是否有可能用3支飞镖(或更少的飞镖)将分数设为0。 例子 范例1: Input: 170 Output: T20, T20, Bullseye 范例2: Input: 6 Output: D3; S3,S1,D1; S2,D2; S2,S2,D1; D2,D1; S4,D1; D1,D1,D1; S1,S1,D2; T1,S1,D1; 范例3: Input: 169 Output: No possible checkout! 规则 基本的飞镖规则,您必须以双打(木板或靶心的外圈)结尾 不使用外部资源。 允许对可能的结帐进行硬编码,但是请记住,这是codegolf,它不会使您的代码简短;) 命中的单元格将以C + N格式显示,其中C = T(表示三重),D …
11 code-golf 

7
代码高尔夫:目录树->树
竞赛(!):使用您选择的语言,编写一个程序,该程序将遍历给定目录的目录树并输出与之对应的树(即数组数组)。假定目录是一个预定义的变量D。以最少的字符数为准。 规则: 您必须使用递归 见规则 注意:假定没有递归深度限制。换句话说,您的代码只需要为足够小的目录树工作,原则上就可以为更大的目录树工作。 例如: 目录树是 dir1 ├── dir11 │ ├── file111 │ └── file112 ├── dir12 │ ├── file121 │ ├── file122 │ └── file123 ├── file11 ├── file12 └── file13 输出树是 [[[],[]],[[],[],[]],[],[],[]] 这里的第一个代码高尔夫,让我知道我做错了什么。 玩得开心 :)

4
从图像产生数字2014
在2014年挑战赛中,迈克尔·斯特恩(Michael Stern)建议使用OCR解析到2014年。我想朝另一个方向挑战。使用您选择的语言/标准库中的内置OCR,设计最小的图像(以字节为单位),将其解析为ASCII字符串“ 2014”。 Stern的原始映像为7357字节,但是经过一点努力,它可以无损地压缩到980字节。毫无疑问,黑白版本(181字节)在相同的代码下也能正常工作。 规则:每个答案都应给出图像,其大小(以字节为单位)以及处理该图像所需的代码。出于明显原因,不允许自定义OCR ...!允许使用任何合理的语言和图像格式。 编辑:为了回应评论,我将扩大它的范围,以包括任何现有的库,甚至对于没有可用的OCR的语言,甚至包括http://www.free-ocr.com/。

20
确定整数是否为给定基数的回文(基数)
编写一个程序,从stdin读取两个整数,每个换行符终止,以下称为“ number”和“ radix”,并且: 打印你想,如果数字是在基数回文任何固定的消息(例如true,t,1) 打印你想,如果数字是不是在基数回文(例如,任何不同的固定信息false,f,0等) 这些信息在每次跑步时都必须相同,但是没有关于它们必须是什么的规则(最好是打高尔夫球的规则)。 您可以假设输入有效,两个正整数。“数字”不超过2147483647,“基数”不超过32767。 您可能不会使用外部资源,但可能会使用语言默认包含的任何数学函数。 注意: 基数只是数字的基数。 样品运行: 16 10 false 16 3 true 16 20 true 121 10 true 5 5 false 12346 12345 true 16781313 64 true 16781313 16 true

1
生成脚本以生成Deep Note
该THX深沉的音符在音频/视频制作技术的最知名的声音之一。根据其创建者的说法,大约需要20,000行C代码来生成最终结果。我们可以做得更好。 您的任务是用任何一种语言编写脚本,该脚本将产生适合THX声音商标描述的声音(到文件或直接到硬件),如美国专利商标局提供的那样: THX徽标主题由七个小节中的30种声音组成,从200到400 Hz的狭窄范围开始,然后逐渐转移到涵盖三个八度的预选音高。这30个声音以200 Hz至400 Hz之间的音高开始,到第四小节达到跨越三个八度音阶的预选音高。最高音调略有失谐,而最低两个音调的声音数量是原来的两倍。 请注意,“预选音高”必须与实际的THX深音符中的音高大致相同,该音高在E平键中。 以任何语言进行的最短代码都会胜出。
11 code-golf 

23
仅使用加法和减法计算所有x的平方
目标是计算所有平方,直到x加减乘。 规则: 该代码必须是一个函数,该函数使用要生成的平方总数,并返回包含所有这些平方的数组。 您不能使用字符串,结构,乘法,除法或内置函数来计算平方。 您只能使用数组,整数(整数),加法,减法。禁止其他运算符! 这是一个代码问题,因此以字节为单位的最短代码胜出!
11 code-golf  math  number 

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.