Questions tagged «code-golf»

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

15
切换一些位并得到一个正方形
给定一个整数,您必须找到将N反转为平方数所需的最小位数。只允许将最高有效位以下的位取反。N&gt;3N&gt;3N>3NNN 例子 已经是一个平方数( 2 2),因此预期输出为 0。N=4N=4N=422222^2000 可通过将1位取反来变成一个平方数: 11000 → 1100 1( 25 = 5 2),因此预期输出为 1。N=24N=24N=2411000→1100111000→1100111000 \rightarrow 1100\color{red}125=5225=5225=5^2111 通过反转的单个位不能被转变成平方数(可能的结果是 23, 20, 18和 30),但它可以通过反转2位来实现: 10110 → 10 0 0 0( 16 = 4 2) ,因此预期输出为 2。N=22N=22N=2223232320202018181830303010110→1000010110→1000010110 \rightarrow 10\color{red}0\color{red}0016=4216=4216=4^2222 规则 如果您的代码太慢或在较大的测试用例中引发错误,也可以,但是它应该至少在不到1分钟的时间内支持。3&lt;N&lt;100003&lt;N&lt;100003 < N < 10000 这是代码高尔夫球! 测试用例 Input | Output ----------+-------- 4 …

10
404-找不到唯一的404页面
受到Stack Overflow 404页面上的多语言 启发: 目标 您的目标很简单,就是创建一个输出数404的多语种,然后以尽可能多的语言终止。 限制条件 这是一个转折,有一个限制使其变得更难: 您必须编写N个程序并按特定顺序选择N种语言。在我个节目需要打印404在第一个我的语言,但没有任何语言后我个。这是为了防止非常简单的解决方案破坏竞争 得分: 确定获奖者的第一个标准是主程序运行所使用的语言数量。 第二个标准是字节数,其中使用更多语言的程序对此标准更重要。 第三个也是最后一个标准是提交时间 说明: 程序的源代码不需要任何关系。它们作为单独的程序运行。任何程序都可以输出尾随和/或前导空格。程序不必彼此继承! 感谢@MartinEnder提供更好的解释!

6
完全对齐并连字符
Given a width and a block of text containing possible hyphen- ation points, format it fully- justified (in monospace). 有充分理由意味着它是在左对齐和右,和通过增加字间距直到每一行配合来实现的。 有关: 通过添加空格来对齐文本 将文本对齐块 从某种意义上说,这可以被认为是“ 文本处理#1:断字”(似乎从未发布过)的下一步。 输入项 您可以采用任何喜欢的格式输入。您将获得: 目标宽度(以字符为单位),范围为5-100(含); 包含可能带有连字符的单词的文本块。这可以是用空格分隔的字符串,单词数组或单词片段数组的数组(或所需的任何其他数据表示形式)。 典型的输入可能是: Width: 25 Text: There's no bu-si-ne-ss lik-e s-h-o-w busine-ss, n-o bus-iness I know. 连字符表示可能的连字符点,空格表示单词边界。文本的可能替代表示形式: [["There's"], ["no"], ["bu", "si", "ne", "ss"], …


5
国王可以抓卒吗?
给定输入四个整数x 1,y 1, x 2和y 2,输出是否象棋中的白国王(坐标为(x 1, y 1))可以捕获黑棋子(坐标为(x 2, y)2))并捕获,如果典当正在移动以尽快提升为女王。 单板的坐标如下: first coordinate (x) 12345678 1 .#.#.#.# 2 #.#.#.#. 3 .#.#.#.# second 4 #.#.#.#. coordinate 5 .#.#.#.# (y) 6 #.#.#.#. 7 .#.#.#.# 8 #.#.#.#. 假设移动是白色的(国王的回合),并且两个玩家都发挥了最佳状态(国王将尽可能快地移动以抓住棋子,并且棋子将尽可能快地移动以提升)。输入坐标将始终是不同的,并且棋子将永远不会以y坐标8开头。 国王每转一圈可向任何方向移动一个正方形(它可以对角移动),并且棋子只能向前移动一个空间(减小其y坐标),除非它处于其初始位置(使用我们的坐标系y坐标) 7),在这种情况下,它可以向前移动两个空间。 输入可以以空格/逗号分隔的字符串,字符串/整数的数组或四个函数/命令行/ etc参数的形式给出。可以按照最方便/最容易使用的顺序给出坐标(因此,只要一致,就可以接受[y 2,y 1,x 1,y 1,y 2 ]作为输入)。输出必须是真实值或虚假值。 由于这是code-golf,因此以字节为单位的最短代码为准。 真实的测试案例: 5 3 …
26 code-golf  chess 

7
写一个0815口译员
我喜欢0815的概念,但是创建者网站上的解释器返回错误404。因此,我决定要求大家提供帮助! 基础 0815基于三(3)个寄存器和一个队列。这些寄存器分别命名为X,Y和Z,其中X为只读,Z为只读,Y为无法直接访问的“辅助”寄存器。所有寄存器开始时都设置为0。所有数字均为十六进制。 使用说明 注:某些指令需要被格式化参数等}:hello:,其中:hello:是参数。其他说明:有些指令说明不清楚,因此我对它们有所保留。(这里的原始说明) ~ 表示该参数是必需的 ----------|---|-------------------------------------------- ~Move | &lt; | &lt;:8: will write 8 to X (parameter required) ----------|---|-------------------------------------------- Swap | x | Swap X and Y ----------|---|-------------------------------------------- ~Label | } | }:hello: makes a label called 'hello' ----------|---|-------------------------------------------- Input | | | Set X to an integer …

12
TI-BASIC中打高尔夫球的技巧
您对TI-83 / 84 +系列计算器在TI-BASIC中打高尔夫球有哪些一般提示?我正在寻找可以应用于代码高尔夫球问题的想法,并且这些想法至少也特定于TI-BASIC(例如,“删除评论”不是答案)。 请为每个答案发布一个提示。
26 code-golf  tips  basic 

19
皇冠百冠皇冠
我注意到某个游戏有一个奇特的寿命计数器,而不是停在这999,获得了新的数字-在未来数冠百元👑00。之后👑99来到冠百个crownty(👑👑0)和最后一个号码,之后👑👑9,被冠百crownty冠或👑👑👑,这将是1110十进制。 你的任务是写一个程序或功能是输出这个计数器。 给定范围内的整数[0,1110](包括两端),输出三个字符串,其中 每个字符都来自列表 0123456789👑 冠(👑)只能显示为最左侧的字符,也可以显示为左侧的冠 当此数字读取为十进制数字,但冠冕计数为时10,您将获得原始数字 测试用例 0 → "000" 15 → "015" 179 → "179" 999 → "999" 1000 → "👑00" 1097 → "👑97" 1100 → "👑👑0" 1108 → "👑👑8" 1110 → "👑👑👑" 您可以使用任何非十进制字符代替冠。为了鼓励漂亮地打印,冠字符(UTF8字节序列“ \ 240 \ 159 \ 145 \ 145”)算作一个字节而不是四个字节。您的程序不必处理超出有效范围的数字。 这是代码高尔夫球,因此最短的答案(以字节为单位)会胜出!

30
诺亚的整数列表
介绍: 我想我们都听说过,但这里有一个简短的摘要:诺亚在大洪水中收集了地球上每种动物的两种,雄性和雌性,保存在他的方舟中。圣经中的实际引用是: 创世记7:2-3 你必须带走每种清洁动物中的七只,雄性及其伴侣,每种不清洁动物中的两只,雄性及其伴侣,以及天空中每种鸟类中的七种,无论雌雄,都将其后代保存在地球上。 资源 但是为了这个挑战,我们将忽略干净/不干净的部分以及他为每只动物取七个的部分。此挑战仅涉及以下部分: 每种不洁动物中的两种,雄性及其伴侣 挑战: 输入: 您会得到一个正整数列表(随机顺序)。 输出: 两个不同的值指示它是否是“诺亚列表”。这并不一定非得是truthy / falsey价值,所以也可能是0/ 1是Java / C#,或'A'/ 'B'以任何语言,举一些例子。 什么时候是“挪亚榜”?当列表中每个整数正好有两个时。 挑战规则: I / O是灵活的。输入可以是整数/浮点数/字符串的列表/数组/流,也可以从STDIN逐一读取。输出可以是从函数返回或输出到STDOUT /文件的任何两个不同的值。 在输入列表中的整数是随机顺序,并保证是该范围内的正1≤n≤1000001≤n≤1000001\leq n\leq100000。 输入列表保证为非空。 如果整数大于2(即4、6、8等),将是错误的。即[6,4,4,6,4,7,4,7]是假的,尽管您仍然可以像这样创建相等的对:[[4,4],[4,4],[6,6],[7,7]]。 一般规则: 这是代码高尔夫球,因此最短答案以字节为单位。 不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 标准规则适用于具有默认I / O规则的答案,因此允许您使用STDIN / STDOUT,具有正确参数的函数/方法以及返回类型的完整程序。你的来电。 默认漏洞是禁止的。 如果可能的话,请添加一个带有测试代码的链接(即TIO)。 另外,强烈建议为您的答案添加说明。 测试用例: Truthy: [7,13,9,2,10,2,4,10,7,13,4,9] [1,2,3,1,2,3] [10,100,1000,1,100,10,1000,1] [123,123] [8,22,57189,492,22,57188,8,492,57188,57189,1,1] Falsey: [6,4,4,6,4,7,4,7] [2,2,2,2,2,2] [5,1,4,5,1,1,4] …

25
输出数独板
今天的挑战很简单:无需输入任何内容,即可输出任何有效的数独板。 如果您不熟悉数独,则Wikipedia描述了有效的面板应该是什么样的: 目的是用数字填充9×9网格,以便组成该网格的每列,每一行以及9个3×3子网格(也称为“框”,“块”或“区域”)包含从1到9的所有数字。 现在这就是事情了……有6,670,903,752,021,072,936,960个不同的有效数独板。其中一些可能很难压缩并以较少的字节输出。他们中的其他人可能更容易。挑战的一部分是弄清楚哪些板将是最可压缩的,并且可以以最少的字节输出。 您提交的内容不必每次都输出相同的板。但是,如果可能有多个输出,则必须证明每个可能的输出都是有效的电路板。 您可以使用此脚本(感谢Magic Octopus Urn)或任何这些答案来验证特定网格是否为有效解决方案。它将[1]为有效板输出a ,为无效板输出其他任何内容。 我不太挑剔您输出答案的格式,只要它显然是二维的即可。例如,您可以输出9x9矩阵,9个3x3矩阵,一个字符串,字符串数组,9位整数数组或9个带有分隔符的9位数字。一维输出81位数字是不允许的。如果您想了解特定的输出格式,请随时在评论中问我。 像往常一样,这是代码高尔夫,因此请用您选择的语言写出最短的答案!

2
非图线暴力破解
背景 Nonogram,也称为Picross或Griddlers,是一个难题,其目标是使用每行上连续的彩色单元格的数量来确定2D网格上的每个单元格是彩色还是空白。 以下是带有解决方案的示例非图拼图。 问题是,某些商业Nonogram游戏/移动应用程序具有无法用手解决的难题(例如,具有多种解决方案,或者需要深度回溯)。但是,它们也为玩家提供了一些生命,当您尝试给正确答案为空白的单元格上色时,将会失去生命。因此,现在是时候对那些令人讨厌的“难题”进行暴力破解了! 为了简化任务,想象一下只有一条线索及其线索: 3 7 | _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 这些[3,7]是线索,行长为15个单元格。由于它有多种可能的解决方案,因此我们需要冒一些生命危险才能完全解决此问题(即确定所有有色单元格)。 挑战 给定一条具有线索的行(正整数列表)和行长,假设您使用最佳策略对这条行进行暴力破解,找出将要失去的最大生命数。 请注意,您总是会猜到有色单元格。在实际的游戏中,猜测空单元(对还是错)对您的生活没有影响,因此您无法以这种方式“解决”难题。 另外,您可以假设输入始终代表有效的Nonogram行,因此您无需担心诸如的问题[6], 5。 说明 首先让我们看一些简单的例子。 [1,2], 5 此行完全有三种可能性(O一个彩色单元格,.一个空单元格): O . O O . O . . O O . O . O O 如果我们尝试为单元格0(从左开始的基于0的索引)着色,则会发生以下情况之一: …

11
这是Pascal的矩阵吗?
在帕斯卡三角形中,每个数字是其正上方两个数字的和,将空点视为零: 通过旋转三角形,我们可以切出大小和旋转不同的正方形矩阵,我将其称为Pascal矩阵。请注意,这些矩阵始终需要包含前1个1个1。这里有些例子: 1 1 1 1 1 2 3 4 1 3 6 10 1 4 10 20 6 3 1 3 2 1 1 1 1 1 5 15 35 70 1 4 10 20 35 1 3 6 10 15 1 2 3 4 5 1 1 1 …

16
建立一群疑似幸福的莱尼面孔(͡°͜ʖ͡°)
我在Reddit上经历了一个奇怪的话题,并遇到了这个问题: (͡°(͡°͜ʖ(͡°͜ʖ͡°)ʖ)°) 它代表一群人有些可疑的微笑。 (不过,在下面的挑战中,当我编写挑战时,右眼左侧的空间以某种方式掉落了。请注意规范)。 您的目标是n使用以下规则创建一组深浅的笑脸面孔: 在深度一处,显示了一个全脸(( ͡° ͜ʖ ͡°))。 在深度二处,示出了半个面。在左侧,代表了略多于一半的脸(( ͡° ͜ʖ)。但是,在右侧显示了右侧,并且省略了嘴巴(ʖ ͡°)) 较深处,仅显示了头部和眼睛的侧面(( ͡°和͡°)。眼睛和头部的左侧之间有一个间隔,但尽管有出现,但右侧没有任何间隔。该间隔是由于͡字符有点混乱。 输入: n,显示要显示的面孔深度为几层。 n将始终在范围内0 &lt;= n &lt;= 500。您无需处理此范围以外的任何内容。 n可以偏移1,以便0表示一个面而不是没有面。但是您将需要处理-1。 输出: 字符串或字符数组,或任何可远程比较的东西(例如Python / Javascript中的单字符字符串列表)。也可以直接打印。尾随空格很好。 您可以提交完整的程序或功能。 由于很难看到涉及的字符,因此它是用Python布局的: &gt;&gt; [ord(c) for c in '( ͡° ͜ʖ ͡°)'] [40, 32, 865, 176, 32, 860, 662, 32, 865, 176, 41] &gt;&gt; …

4
这个房间有多亮?pt 1个
与这个问题有关。 甲室被定义为一个(不一定凸)不相交的多边形,表示为2维坐标的有序列表。足够明亮的灯泡放在房间内的特定位置,并向各个方向发光。您的任务是找到房间的总照明面积。您可以采用任何合理的格式输入。多边形/房间上的点以及光源的坐标是有理数。它们可以顺时针或逆时针拍摄,两种格式都可以。问题中的测试用例是逆时针给出的。 下图显示了两个示例房间,其中紫色点表示光源,阴影区域表示照明区域。 测试用例: (1/2, 18) (1,3) (5,1/2) (7,5) (12,7) (16,3) (15,11) (8,19) (3,7) Light source located at (5,8) Answer: 815523/6710 ≈ 121.538 这是该测试用例解决方案的图形化描述。不在原多边形上的两个定义解决方案的点是(55/61,363/61)和(856/55,357/55)。 此公式可能有助于计算面积。 由于这是code-golf,因此以字节为单位的最短代码为准。

8
爆炸数字
沙盒(已删除) 让我们将9s的矩阵定义为: ñ= ⎡⎣⎢999999999⎤⎦⎥ñ=[999999999] N = \begin{bmatrix} 9&9&9\\9&9&9\\9&9&9 \end{bmatrix} 让我们将爆炸数字定义为位置处的数字,该数字可以分解为所有相邻邻居(包括自身)之间的相等整数,并且每个部分的绝对值都大于0。(x ,y)(X,ÿ)(x,y) 从上一个矩阵开始,让位置处的数字爆炸(索引为0) (1 ,1 )(1个,1个)(1,1)ñ= ⎡⎣⎢999999999⎤⎦⎥ñ=[999999999] N = \begin{bmatrix} 9&9&9\\9&\color{red}9&9\\9&9&9 \end{bmatrix} ñ= ⎡⎣⎢9 + 19 + 19 + 19 + 10 + 19 + 19 + 19 + 19 + 1⎤⎦⎥ñ=[9+1个9+1个9+1个9+1个0+1个9+1个9+1个9+1个9+1个] N = \begin{bmatrix} 9+\color{red}1&9+\color{red}1&9+\color{red}1\\9+\color{red}1&\color{blue}0+\color{red}1&9+\color{red}1\\9+\color{red}1&9+\color{red}1&9+\color{red}1 \end{bmatrix} ñ= ⎡⎣⎢101010101个10101010⎤⎦⎥ñ=[101010101个10101010] N = …
25 code-golf  matrix 

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.