Questions tagged «code-golf»

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

30
领先的零挑战
挑战 给定两个整数作为输入(x和y),将其输出x为一个字符串,并带有多个前导零,以使该字符串成为y无符号的字符长。 规则 如果x有超过y位数,输出x为不加修改字符串。 即使没有前导零,也不接受以整数形式输出。 当x为负数时,保持-原样并以绝对值进行运算。 负数y应视为0,表示您x按原样输出(但作为字符串输出) 例子: IN: (1,1) OUT: "1" IN: (1,2) OUT: "01" IN: (10,1) OUT: "10" IN: (-7,3) OUT: "-007" IN: (-1,1) OUT: "-1" IN: (10,-1) OUT: "10" IN: (0,0) OUT: "0" IN: (0,1) OUT: "0" IN: (0,4) OUT: "0000" 以字节为单位的最短代码获胜,存在标准漏洞。
31 code-golf  string 

13
油炸锅模拟器
您的任务是模拟面糊对食物的影响。请添加三层地壳。 [[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0], // in [0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0], [0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0], [0,0,0,0,1,0,0,0,0,0,0,0,1,1,0,1,0,0], [0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0], [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]] | V [[0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,2,1,2], [0,0,2,1,2,2,0,0,0,0,0,0,0,2,2,0,2,0], [0,0,2,1,1,1,2,0,0,0,0,0,2,1,1,2,0,0], [0,0,0,2,1,2,0,0,0,0,0,2,1,1,2,1,2,0], [0,0,0,0,2,0,0,0,0,0,0,0,2,1,1,1,2,0], [0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0]] | V [[0,0,3,2,3,3,0,0,0,0,0,0,0,3,3,2,1,2], [0,3,2,1,2,2,3,0,0,0,0,0,3,2,2,3,2,3], [0,3,2,1,1,1,2,3,0,0,0,3,2,1,1,2,3,0], [0,0,3,2,1,2,3,0,0,0,3,2,1,1,2,1,2,3], [0,0,0,3,2,3,0,0,0,0,0,3,2,1,1,1,2,3], [0,0,0,0,3,0,0,0,0,0,0,0,3,2,2,2,3,0]] | V [[0,4,3,2,3,3,4,0,0,0,0,0,4,3,3,2,1,2], // out [4,3,2,1,2,2,3,4,0,0,0,4,3,2,2,3,2,3], [4,3,2,1,1,1,2,3,4,0,4,3,2,1,1,2,3,4], [0,4,3,2,1,2,3,4,0,4,3,2,1,1,2,1,2,3], [0,0,4,3,2,3,4,0,0,0,4,3,2,1,1,1,2,3], [0,0,0,4,3,4,0,0,0,0,0,4,3,2,2,2,3,4]] 一点视觉帮助: 显示代码段 body { background-color:#222; color:lightgray; } <pre> [[<span style="color:gold">0</span>,<span style="color:gold">0</span>,<span style="color:gold">0</span>,<span style="color:gold">0</span>,<span style="color:gold">0</span>,<span style="color:gold">0</span>,<span …
31 code-golf  matrix 

3
活页乐谱ASCII艺术生成器
注意:Anders Kaseorg警告我,这可能是另一个先前问题的重复。看来是这样,很抱歉,我在发布此问题之前没有找到该问题。尽管如此,这个问题只收到一个答案,这个答案比较简单,以防万一大家都想尝试一下。不过,我将了解该问题是否最终被标记为重复。 挑战 给定这样的输入: 8g 8Df 4cs 2C 1A 编写产生如下输出的最短程序/函数: /\ -o- | | ---|-|---------------------------------------------------|-| |/ | | ---/|--------|\----b-*-----------------------------------|-| / | | | | o | | -|--|--------|------|-----------------|------------------|-| | (| \ | | | | | | -|--|--)----*-------|/---------|------|------------------|-| \ | / | | | | -----|-------------------------|-------------------------|-| | | *_/ #-*- …

21
三个“ R”:反向,重新排序,重复
在用数字涂鸦时,我发现可以从数字列表中生成一个有趣的排列。如果您重复相同的排列足够多次,您将始终回到原始数组。让我们使用以下列表: [1, 2, 3, 4, 5] 举个例子 反转数组。现在我们的数组是 [5, 4, 3, 2, 1] 重新排序(交换)每对。我们的列表有2对:[5, 4]和[3, 2]。不幸的是,我们不能将它们组合1为一对,所以我们将其留给自己。交换每对后,新数组为: [4, 5, 2, 3, 1] 重复步骤1和2,直到返回到原始数组。以下是以下4个步骤: Step 2: Start: [4, 5, 2, 3, 1] Reversed: [1, 3, 2, 5, 4] Pairs Swapped: [3, 1, 5, 2, 4] Step 3: Start: [3, 1, 5, 2, …

30
2的幂和
挑战 给定一个整数输入x其中1 <= x <= 255,返回时总结给出了两种力量的结果x。 例子 给定输入: 86 您的程序应输出: 64 16 4 2 输入: 240 输出: 128 64 32 16 输入: 1 输出: 1 输入: 64 输出: 64 如果总和中没有确定的2的幂,则输出可能包含零。 例如,输入65可以输出0 64 0 0 0 0 0 1。 计分 这是代码高尔夫球,因此每种语言中最短的答案将获胜。
31 code-golf  binary  code-golf  sequence  integer  chess  code-golf  number  arithmetic  matrix  code-golf  code-golf  combinatorics  grid  set-partitions  code-golf  array-manipulation  graph-theory  code-golf  number  code-golf  string  decision-problem  code-golf  matrix  cellular-automata  3d  code-challenge  restricted-source  printable-ascii  code-golf  board-game  code-golf  geometry  grid  code-golf  word-puzzle  code-golf  matrix  sorting  code-golf  code-golf  string  decision-problem  code-golf  matrix  cellular-automata  code-golf  decision-problem  code-golf  math  number  arithmetic  restricted-source  code-golf  code-golf  number  integer  matrix  code-golf  date  code-golf  matrix  code-golf  sequence  combinatorics  chemistry  code-golf  array-manipulation  popularity-contest  code-golf  code-golf  natural-language  code-golf  number  integer  sorting  substitution  code-golf  string  number  date  encode  code-golf  decision-problem  code-golf  string  subsequence  code-golf  string  alphabet  code-golf 

30
我是一个自我号码吗?
一个自号(也称为哥伦比亚或Devlali号)是一个自然数,x其中的公式n + <digit sum of n> = x对任何自然数无解n。例如,21不是一个自数,n = 15结果为15 + 1 + 5 = 21。另一方面,20 是一个自己的数字,因为n找不到满足这种相等性的数字。 由于此定义引用数字总和,因此它取决于基数。出于此挑战的目的,我们将仅考虑基数为10的自身编号,即OEIS 中的序列A003052。二进制(A010061)和以100为基数(A283002)的自编号也经过计算。 挑战 给定一个正整数x作为输入,如果x以10为底的自数,则输出一个真值,否则输出一个假值。为了澄清真实值和虚假值,请参阅此主题的meta文章。 您可以编写完整的程序或函数,并且可以在任何常用通道上提供输入和输出。当然,标准漏洞是被禁止的。 这是代码高尔夫球,因此答案越短(以字节为单位)越好! 测试用例 真相: 1 3 5 7 9 20 31 86 154 525 虚假: 2 4 6 8 10 15 21 50 100 500 沙盒链接 排行榜 这是一个堆栈片段,用于按语言生成常规排行榜和获胜者概述。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 …

30
二进制斐波那契
挑战 您需要生成一个程序或函数,该程序或函数需要一个正整数N,以二进制形式计算斐波那契数列的前N个项,将其连接为单个二进制数,将该数字转换回十进制,然后将十进制输出为整数。 例如 1 -> [0] -> 0 to decimal outputs 0 3 -> [0, 1, 1] -> 011 to decimal outputs 3 4 -> [0, 1, 1, 10] -> 01110 to decimal outputs 14 您无需输出->,只需输出数字(例如,如果用户输入4,则仅输出14)。箭头仅用于帮助解释程序必须执行的操作。 测试用例 1 -> 0 2 -> 1 3 -> 3 4 -> 14 5 …

30
可分割条纹
我们可以定义整除条纹k一批n通过寻找最小的非负整数,k这样n+k是不是整除k+1。 挑战 用您选择的语言编写输出或返回输入的可分割条纹的程序或函数。 例子: n=13: 13 is divisible by 1 14 is divisible by 2 15 is divisible by 3 16 is divisible by 4 17 is not divisible by 5 的多样性条纹13为4 n=120: 120 is divisible by 1 121 is not divisible by 2 的多样性条纹120为1 测试用例: n DS 2 1 …

22
构造龙卷风
根据我的说法,龙卷风看起来像这样: ######## ####### ###### ##### #### ### ## # 此龙卷风以width开头n,在下一行中,根据输入,从左侧或右侧删除一个字符。 输入值 输入将是任何两个唯一值的列表(一个由两个唯一字符组成的字符串也可以),以及一个可选的正整数(表示起始宽度)的列表。如果未采用可选的整数,则起始宽度比列表的长度大1。让起始宽度为n。 如何制作龙卷风 在我的示例中,我选择了包含1s和0s的列表,尽管您可以选择任意两个不同的常量值,或者任意两个不同的常量字符的字符串。 第一行将由n非空白字符组成(您可以选择任何一致的字符;我选择#示例)。 然后,对于列表中的每个数字,如果数字为0,则删除左字符并创建一个新行;如果是1,请删除正确的字符并创建新行。 因此,以上龙卷风是的输出8, [1, 0, 0, 0, 1, 0, 0]。 输出量 输出可以是字符串列表,字符列表或多行字符串。允许在每行末尾添加空白,并在末尾添加换行符。 测试用例 这些测试用例包括起始宽度和的使用列表1, 0。 5, [1,0,0,1] ##### #### ### ## # 10, [1,0,0,1,0,1,0,0,1] ########## ######### ######## ####### ###### ##### #### ### ## # 7, [1,1,1,1,1,1] …

4
一条链上的狗
我从阁楼的窗户向外望去,到邻居家的院子里。他们的狗被拴在院子中央的一个柱子上。狗在院子里跑来跑去,但总是在链的尽头,所以它最终在泥土中留下了痕迹。通常,这条轨道是完美的圆形,但是我的邻居的院子里还有其他一些杆子,狗的链子就被抓住了。每次狗链碰到一根杆时,狗都会绕着新的杆旋转,而无论链的长度如何,半径都会保持不变。由于极,狗和链条的宽度均为零(我的邻居是数学家),因此链条可以无限地绕杆子缠绕,而圆半径不会缩短。如果链条在其路径中,则狗也可以通过链条(但不能穿过项圈)。观察了一段时间后,我决定编写一些代码来模拟邻居的狗。该代码将获取狗被拴在其上的中心杆的位置,邻居院子中其他杆的位置,链的长度以及狗的起始位置,并输出一个图,以指示狗已经把草磨破的小路。您可以假定以下各项的任何组合都是常数(因此不将其作为输入): 狗拴在一起的电线杆的位置 链长 狗的起始位置 太阳正在升起,所以被窗户照亮的阁楼地板上的空间正在缩小,给我的编写代码的空间越来越少。请尽量减少代码的字节数,以便我有足够的空间在阁楼上草拟该代码。 测试用例 在这里,我假设那只狗从链条所在的极点(红点)向南3个单位开始0,0。为了清楚起见,我已经在极点处指示了点,您无需在输出中包括它们。 Poles at 1,2 -1,2 Poles at 0,.5 Poles at 0,1 1,1 -2,1 -1,-.5 Poles at 0,1 1,1

18
统一标识符
介绍 根据定义,唯一标识符应该是唯一的。具有多个相同的标识符会导致检索意外数据。但是,由于数据是同时从多个来源到达的,因此很难确保唯一性。编写一个函数以统一标识符列表。 这可能是我写的最糟糕的拼图绒毛,但您明白了。 要求 给定一个零个或多个正整数的列表,请对每个数字从头到尾应用以下规则: 如果数字是同类数字中的第一个,请保留该数字。 如果以前遇到过该数字,请用在整个输入列表或任何现有输出中未找到的最低正整数替换它。 对于解决方案: 解决方案可以是程序或功能。 输入可以是字符串,数组,作为参数传递的输入或键盘输入。 输出可以是字符串,数组或打印到屏幕上。 输出列表中的所有数字都是唯一的。 假设条件 输入列表是干净的。它仅包含正整数。 正整数的范围是1到2 31 -1。 程序变量的可用内存少于256 MB。(基本上,不允许使用2,147,483,648个元素的数组。) 测试用例 Input: empty Output: empty Input: 5 Output: 5 Input: 1, 4, 2, 5, 3, 6 Output: 1, 4, 2, 5, 3, 6 Input: 3, 3, 3, 3, 3, 3 Output: …

30
无限打印芝诺的二分悖论(1 /(2 ^ n))
维基百科:芝诺的二分法悖论 无限数量的数学家走进酒吧。第一个点啤酒。第二个人点半杯啤酒。第三个人点了四分之一的啤酒。酒保阻止了他们,倒了两杯啤酒,然后说:“你们都是白痴。” Reddit 在程序运行期间,请打印以下系列,每个项目的分母每次都乘以2: 1 + 1/2 + 1/4 + 1/8 + 1/16 + 1/32 + ... 随着n接近无穷大,该序列的总和也趋近2。 规则 不,您可能无法打印2。 您可能不会将其打印1/1为第一项。 您可以根据需要删除空格1+1/2+...或添加空格1 + 1 / 2 + ...。 由于流行的需求,您可以使用换行符代替空格作为分隔符。 您可以将附加.的加一个常数0s到分母如果需要的话。 “无限”表示没有不必要的延迟,并且尽可能地受当前(可变)系统规范的限制,但不受您当前语言的限制。 有标准漏洞。 这是代码高尔夫球,因此最短答案以字节为单位。

30
制作一个尖尖的盒子
给定两个正整数W和H,输出一个ASCII艺术框,其边框由斜杠(/和\)组成,顶部和底部边缘带有W“尖峰”,而左侧和右侧边缘则带有H“尖峰”。盒子的内部充满了空间。 一个“尖峰”就是两个斜线一起形成一个箭头形状: /\ \/ / \ \ / 因此,输出W = 4, H = 3将是 /\/\/\/\ \ / / \ \ / / \ \/\/\/\/ 因为顶部有4个尖峰,向上有4个尖峰,底部有4个尖峰,左侧有3个尖峰,右侧有3个尖峰。 以下是一些其他输入/输出对: W H [spiky slash box] 1 1 /\ \/ 1 2 /\ \/ /\ \/ 2 1 /\/\ \/\/ 2 2 /\/\ \ / …

24
以ASCII格式绘制HyperNeutrino的苯六邻体图标
为了庆祝HyperNeutrino追随Xcoder 先生,收回他的帐户和代表。 抱歉,为了获得可旋转性而旋转图片。 确切地打印或输出此ASCII艺术作品。您可能有尾随空格和/或尾随换行符。 _______________ / \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ \ / \ / \ / \ / \ _____________ / \_______________/ 这描绘了苯分子的两个共振结构之一 相关:同心六边形,星号填充六边形 排行榜: 显示代码段 var QUESTION_ID=128104,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/128104/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function …

7
最长的多米诺骨牌链
挑战说明 多米诺骨牌(Dominos)是一款带有两个值的图块-左边是一个值,右边是一个值,例如[2|4]或[4|5]。如果两个图块包含公共值,则可以将它们连接在一起。上面的两个图块可以像这样连接: [2|4][4|5] 我们将n连接的瓦片序列称为长度为n 的链。当然,地砖可以旋转,所以瓦片[1|2],[1|3]并且[5|3]可被重新安排到一个链[2|1][1|3][3|5]长度为3的。 给定整数对列表,请确定可以使用这些图块形成的最长链的长度。如果列表为空,则正确答案为0(请注意,您始终可以1从非空的图块列表中形成一个长度链)。 样本输入/输出 [(0, -1), (1, -1), (0, 3), (3, 0), (3, 1), (-2, -1), (0, -1), (2, -2), (-1, 2), (3, -3)] -> 10 ([-1|0][0|-1][-1|2][2|-2][-2|-1][-1|1][1|3][3|0][0|3][3|-3]) [(17, -7), (4, -9), (12, -3), (-17, -17), (14, -10), (-6, 17), (-16, 5), (-3, -16), (-16, 19), (12, -8)] …

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.