编程拼图和代码高尔夫

编程益智爱好者和代码高尔夫球手的问答

1
胶带可以固定任何东西
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 总览 此挑战的灵感源于此StackOverflow Meta帖子。在其中,@ hakre说: 我看过一个真正由Stackoverflow编写的项目(一个菜鸟从这里SO和那里SO一起复制),通常不会完成归因,这会导致CC下的权利终止。(原文如此) 您的任务是制作最有趣的程序,而无需编写任何代码。在StackOverflow的问题和答案中,您只能使用已经为您编写的代码。您所能做的就是用胶带尽力而为。当然,我们必须提供适当的归属,以免权利被终止,这一点非常重要。 规则 您必须包含指向您在答案中使用的问题/答案的链接。 您不能修改找到的代码,但以下情况除外: 一种。您可以重命名变量,函数和方法。(这并不意味着你可以改变一个方法调用,通过改变,说scanner.nextInt()要scanner.nextLine()和声称您更改的方法名。改变必须在定义或引用同一实体。) b。您可以适当地调整缩进。 C。您可以假定已加载适当的模块以使代码段正常工作。(例如,import用于Java和Python的using语句,用于C#和C ++的语句以及所有语言的等效项)如果代码段中包含imports,则可以将其移至代码顶部。 d。如果语言要求代码在某种方法体内执行(例如,public static void main(String[] args)对于Java,static int Main(string[] args)对于C#等),则可以将代码包装在适当的方法中。但是该主要方法的内容必须保持不变。 您必须提供所执行的任何变量/方法/函数/类重命名的明确列表。 您不能接受片段摘要(这意味着,如果您从帖子中获取代码块,则整个过程都将完成) 为不熟悉您所使用语言的人提供代码的简要说明。 人气竞赛,因此最投票获胜! 无聊的五分钟示例(Python 3) 描述:从当前目录中读取一堆日志文件,并将其中的行随机化(令人兴奋,对吗?这将完全赢得一场人气竞赛) 资源 import glob import random for file in glob.glob('log-*-*.txt'): # Etc. with open(file) as f: content = f.readlines() # …

8
欠载数的最短表示
风味文字 基于堆栈的esolang 欠载有一些有趣的联系,函数式编程。其中之一是对数值数据类型的处理-像lambda演算一样,您可以通过执行N次操作的函数来表示自然数N。 为简单起见,我们仅考虑以下Underload命令子集: : -此命令复制堆栈上的顶层项目。 * -此命令将堆栈中的前两个项目合并为一个项目。 我们将一个Underload数字N定义为一个字符串,当执行该字符串时:,*它消耗堆栈中的最高位项目,并产生N个该项目的副本,并将它们连接在一起。一些例子: 没有欠载数字0,-1、1 / 2,π。 空字符串是欠载数字1,因为它使堆栈保持不变。 :*是欠载数字2,因为它复制了最上面的项目,然后将这两个副本连接在一起成为一个项目:(A):*= (A)(A)*= (AA)。 ::**是Underload数字3:(A)::**= (A)(A):**= (A)(AA)*= (AAA)。 :::*** 是欠载数字4。 :*:*也是欠载数字4:(A):*:*= (AA):*= (AA)(AA)*= (AAAA)。 通常,您会发现,如果M和N分别是欠载数字M和N,则:N*数字N + 1和MN数字M×N。 挑战 您的任务是编写最短的程序(在STDIN上接受输入)或函数(通过参数接受输入),以产生最短的欠载数字表示形式,作为字符串输入。也就是说,如果输入的正自然数N> 1,则必须生成一个负数N,其字符长度小于或等于其他所有负数N的长度。 输入和输出示例:(“输入- OUTPUT”) 1- 。 2- :*。 5- ::*:**(2×2 + 1)。 7- ::*::***(2×3 + 1)或:::**:**(3×2 + 1)。 33- ::*:*:*:*:**(2×2×2×2×2 …

2
诗人的奎因
阅读时,请从http://en.wikipedia.org/wiki/Rhyme_scheme编写一个带有1个或多个韵律方案的藜。大声说出以下字符: 注释中没有的任何字母数字单词或字符; 比较和算术字符(+加号;-减号; *倍数,/除以|或,||或,&和,&&和,!不,=等于,==等于,===等于)。 以下内容不予考虑(不大声说出): 表示字符串文字(“')开头或结尾的任何字符; 表示逻辑块开头或结尾的任何字符((){} []); 表示描述变量,函数或代码行(。,;)的任何字符。 评论中的任何字符; “大声说出”规则始终适用。除Brainfuck,K,J,APL,Befunge和Sclipting外,“不大声说”规则适用于所有语言。对于APL,Brainfuck,Befunge,K和J,未在“大声说话的规则”中提及的任何字符均受上述“始终选择”规则的约束。滑行字符的发音就像是汉字一样,可以自由选择要使用的发音。 任何未明确允许或拒绝发音的字符都可以自由发音或保持沉默。但是,特定字符要么总是发音,要么总是保持沉默。您可能不会在一行中将#当作主题标签发音,而在下一行中保持#沉默。 单词可以用任何方言或语言发音,但是在同一节中必须保持一致(第一个单词不用苏格兰语发音,第二个单词用威尔士语发音)。 比赛类型是人气比赛。截止日期为4月23日,以纪念最著名的吟游诗人之一的威廉·莎士比亚(William Shakespeare),他据称当天出生并去世。获胜者是得票最多的人。 编辑:因为我认为不会再有其他参赛作品,所以我决定尽早结束比赛。我会暂时标记获胜者。

11
计算您的堆叠交换信誉
背景: 我经常发现,在浏览Stackexchange网站时,我开始怀疑人们如何获得自己的声誉。我知道我总是可以依靠codegolf SE来解决我的问题,所以这里是: 创建一个程序,该程序将接受代表一个人的声誉的正整数。我们将忽略赏金,并说这些是在SE上获得/失去代表的唯一方法(此处是完整表格): 每个帐户以1个代表开始,且不能低于该代表 您的问题已获通过= +5 您的答案被推荐= +10 您的问题被否决= -2 您的答案被否决= -2 您否决了一个答案= -1 您的答案被接受= +15 您接受答案= +2 您的程序必须弄清楚在该用户的帐户上发生了多少这些操作才能获得他们的代表。它必须找出最短数量的动作才能达到此级别的代表。例子: 输入:11输出:1个答案 输入:93输出:接受6个答案,接受1个答案 在这些示例中,当我说“问题投票”时,表示该人的任务被投票了。当我说“答案被否决”时,表示他们对其他人的答案有所反对。 规则: code-golf,因此可以胜任的最短代码将获胜。
13 code-golf 

10
制作100个字符以内最有用的程序[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 在此任务中,您可以制作一个有用的程序,以执行可以在100个字符内编写的任何事情。您可以使用更少的字符,但不能更多。 规则,只是为了防止不再有趣的标准漏洞: 除非确实需要,否则您的程序无法访问Internet。例如,在该网站上显示最高评分问题的程序可以使用Internet来检查该问题。但是,不允许浏览Internet来查找其真正来源并运行它。 您的程序不能是该语言的解释器。但是,使用非Brainfuck语言的Brainfuck解释器可以。 您的程序无法执行与您的程序完全相同的外部程序。例如,您不能运行vim,并声称您的程序是vim实现。 您的程序对于在其上运行的计算机和其他计算机不会造成危险。您不允许编写类似rmdir /的程序(此处的示例有意不起作用,请不要对其进行修复),并声称它是删除计算机上所有文件的有用程序。 您的程序可能会变慢,并且会使用所需的大量资源,只要您可以证明它能够完成预期的工作即可。 不允许您专门为此任务设计语言。但是,您可以使用其他某种编程语言来为自己的发明语言做翻译。

28
输出整数的第n个数字
如果不使用字符串(除了在必要时,如与输入或输出)计算第n个位,从左侧,一个的整数(在基体10)。 输入将以以下格式给出: 726433 5 输出应为: 3 因为那是“ 726433”的第五位数字。 输入将不包含前导零,例如“ 00223”。 测试案例/更多示例: 9 1 -> 9 0 1 -> 0 444494 5 -> 9 800 2 -> 0 这是代码高尔夫;最少的字符获胜,但是任何内置函数(例如“ nthDigit(x,n)”)都不可接受。 以下是一些伪代码,可以帮助您入门: x = number n = index of the digit digits = floor[log10[x]] + 1 dropRight = floor[x / 10^(digits - …
13 code-golf  math 

1
Brainf ** k调试器
您的挑战是要像这样输入(Hello World程序): ++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++. 并输出提示(将为"> "): > 然后,用户可以在提示符下输入任何内容。您的简单调试器必须具有以下命令: S - 步 L步进后输出当前位置(请参阅)。 S(a positive integer) -走那么多空间 L - 位置 术语“位置”始终是指您在程序中的位置(即指令指针)。 格式如下: v +++++++[>+++++++<-]>. 这意味着程序的当前位置在第三个位置+。 G(an integer) - 去 这意味着继续踩,直到到达那个位置。如果您到达程序的结尾但还没有到那儿,只需退出程序即可。 负整数表示末尾有许多字符。是的,这意味着-0不同于0,并且-1是倒数第二个字符。 不要为此命令输出任何内容。 D -转储数组 格式像 1, 2, 3, 4, 5 如果数组是1, 2, 3, 0, 0, 0, 0, 0, ...,则仅输出1, 2, 3。 D(a …

6
我的机器人逃脱了实验室!
我的机器人由于某种原因短路,并从实验室随机逃逸! 幸运的是,每当他这样做时,他的关闭顺序都会启动,这给了他足够的时间在关闭前随机旋转并朝着其朝向运行五轮。他的陀螺仪和加速度计功能仍在将数据传回实验室的过程中。 例如,数据将始终以五组两个数字的形式出现。 12:234,-135:47,-68:230,140:324,127,87 高尔夫球手的任务是:a)通过显示五组数字来模拟机器人的疯狂奔跑和转弯顺序,a1:d1,a2:d2,a3:d3,a4:d4,a5:d5其中a(n)是顺时针角度(以度为单位),-179<=a<=+180以便机器人从当前航向转弯(最初,它处于零方位,然后才开始惯性旋转并第一次转弯。)d(n)是在下一个航向变化之前它已经经过的距离(以英尺为单位)0<=d<=500;b)实验室计算出的航向(航向也为零),以英尺为单位的距离(强烈建议精确到小数点后3位,如果是,则为-5字节),以及方向航向(以度为单位)关闭机器人时面对的位置。 简单的例子: Data: 0:1,45:1,90:1,90:1,90:1 Heading: 0 Distance: 1 Orientation: -45 随机的转弯和距离就是随机的。没有设置值要进行硬编码,我们必须在代码中看到随机的行为。 对随机性的限制:没有基于时钟或日期的引用,我们需要random在代码中查看本机引用。每当您运行此代码时,随机性都必须能够在每次转弯回合中显示360个可能的转角之一。因此,机器人可能会转一圈-36度,下一圈可能转+157度,然后再转+2度再转-116度再转一圈,最后转一圈再转+42度。每个随机角度生成必须至少有360个不同的值(在-179至+180度之间)。 距离行驶的限制:同样设置,机器人可以行驶501种可能的距离(包括0到500英尺),因此我希望在确定机器人的行驶距离时也可以使用随机性。从理论上讲,该机器人可以在各自的回合中运行45英尺,117英尺,364英尺,27英尺和6英尺... 馈给您的数据将始终为整数值……机器人将以度数的整数范围旋转,并将以距离的整数范围运行。但是输出值将是浮点数... 这是代码高尔夫球。最短的代码胜出...现在去寻找我的机器人! PS:关于我的“精度最多3个小数位”,如果您可以提供航向(以度为单位,最小为3个小数位)和以英尺为单位的距离(也可以精确到最小3个小数位),将获得-5字节的奖励)。
13 code-golf  math 

3
创建一个到井字游戏检查器的n
创建最短的程序检查谁已经在n赢得d井字游戏。 当n(宽度)和d(维数)在以下范围内时,您的程序应该可以运行: n∈[3,6]∩ℕ ie a number from this list: 3,4,5,6 d∈[2,5]∩ℕ ie a number from this list: 2,3,4,5 n = 3; d = 2(3 2即3 x 3): [][][] [][][] [][][] n = 3; d = 3(3 3即3 x 3 x 3): [][][] [][][] [][][] [][][] [][][] [][][] [][][] [][][] [][][] …

5
在其他代码中隐藏Brainf ***问候
目的是编写一个程序(打印出明确的头脑操之外的任何东西),打印出Barney Stinson的最佳规则: 新总是更好。 正常解释时,但是 莱根...等一下... ary! 与Brainfuck解释器一起处理时。 可能是最受欢迎的兄弟赢了。您有72个小时的传奇经历。

12
用您喜欢的语言做一个情人节愿望[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 编写最具创意的程序,以您喜欢的编程语言显示您的情人愿望。 例如 #!/usr/bin/perl use Modern::Perl; say "I love Perl";

19
世界再见![关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 编写一个可擦除自身的程序。尽管确切的行为可能是实现定义的,但它应至少在最大努力的基础上尝试删除程序存储在其中的文件。 这是一场人气竞赛,因此投票最多的答案将获胜。

30
计算整数的出现次数
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 3年前关闭。 根据这个问题,数字2中有多少<1,000,000个正整数?。我正在寻找最有创意的解决方案,以将所有Integer从计数X到Y包含Integer Z。 Z可以是0到Y。 即使整数Z出现频率更高,每个找到的Integer只会计数一次。例如: Z = 2 123 counts 1 22222 also counts 1 我将从一个用Java编写的非常简单的算法开始(因为每个人都喜欢它): public class Count { public static void main(String[] args) { int count = 0; for (int i = Integer.parseInt(args[0]); i <= Integer.parseInt(args[1]); i++) { if (Integer.toString(i).contains(args[2])) { count++; } } System.out.println(count); } …

30
将数字列表排序为奇数和偶数类别的最短程序
在《新近时代》中,查理·卓别林(Charlie Chaplin)遇到一台计算机时,他被雇用在分拣场中,作为检验员来确定工人是否正确地对物品进行分拣。有问题的物品是大理石包。大理石数为奇数的小包被堆叠在红色篮子中,大理石数为偶数的小包被堆叠在蓝色篮子中。 查理·卓别林(Charlie Chaplin)应该打孔程序,该程序将验证排序过程中是否存在任何异常。马克·斯温(Mack Swain)的直属上司分享了一种他需要编码的算法。 算法 L = List of Marble packets that's already sorted L_ODD = List of packets with Odd Number of Marbles L_EVEN = List of packets with Even Number of Marbles Check_Digit = √(ΣL_ODD² + ΣL_EVEN²) 他的工作是确定Check_Digit,并将其与Boss计算的值相匹配。 查理·卓别林(Charlie Chaplin)在午餐时间可以偷偷溜到马克·斯温(Mack Swain)的抽屉里,确定他的抽屉在前46 32列上有一张带有打孔器的卡片(这意味着马克只能编写一个只有46 32个字符的程序)。 查理·卓别林(Charlie Chaplin)现在需要所有代码忍者的帮助,才能编写出尽可能少的行。如果有人能提出比他的老板短的程序,他还将宣布50分的奖励。 摘要 给定一个正数(奇数和偶数)的列表/数组/向量,您需要编写一个函数,该函数将接受array(int …

14
矩形假分形
目标 该程序的目标是绘制一个ASCII艺术矩形,该矩形的大小在水平方向和垂直方向上反复翻倍。每次矩形大小加倍时,多余的区域将用不同的字符表示,并且先前的区域将保持不变。最小的两个部分各包含一个字符,并且可以位于任何角落。 该程序接受单个整数作为输入,定义整个矩形包含的部分数量。 不允许其他外部资源或输入。 样本输入和输出 10 ABDDFFFFHHHHHHHHJJJJJJJJJJJJJJJJ CCDDFFFFHHHHHHHHJJJJJJJJJJJJJJJJ EEEEFFFFHHHHHHHHJJJJJJJJJJJJJJJJ EEEEFFFFHHHHHHHHJJJJJJJJJJJJJJJJ GGGGGGGGHHHHHHHHJJJJJJJJJJJJJJJJ GGGGGGGGHHHHHHHHJJJJJJJJJJJJJJJJ GGGGGGGGHHHHHHHHJJJJJJJJJJJJJJJJ GGGGGGGGHHHHHHHHJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ IIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJ 选择标准 一周内最短的代码将赢得积分。

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.