编程拼图和代码高尔夫

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

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 <= n <= 500。您无需处理此范围以外的任何内容。 n可以偏移1,以便0表示一个面而不是没有面。但是您将需要处理-1。 输出: 字符串或字符数组,或任何可远程比较的东西(例如Python / Javascript中的单字符字符串列表)。也可以直接打印。尾随空格很好。 您可以提交完整的程序或功能。 由于很难看到涉及的字符,因此它是用Python布局的: >> [ord(c) for c in '( ͡° ͜ʖ ͡°)'] [40, 32, 865, 176, 32, 860, 662, 32, 865, 176, 41] >> …

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 

16
不重叠矩阵总和
不重叠矩阵总和 给定k个长度为n的数组,使用每个数组中的一个元素输出可能的最大和,这样就不会有两个元素来自同一索引。保证k <= n。 输入项 一个非空整数数组的非空列表。 输出量 代表最大和的整数。 例子 Input -> Output [[1]] -> 1 [[1, 3], [1, 3]] -> 4 [[1, 4, 2], [5, 6, 1]] -> 9 [[-2, -21],[18, 2]] -> 0 [[1, 2, 3], [4, 5, 6], [7, 8, 9]] -> 15 [[1, 2, 3, 4], [5, …

15
任意间隔尺
制作一个程序,该程序需要一个长度和间隔列表,并使用线条图字符为每个间隔输出具有更长刻度线的该长度的标尺 ┌ ┬ ┐ │ ╵ 输出的第一行应以0的刻度开头,┌以的长度结尾的刻度结束┐,中间的┬每个字符都使用一个。length第一行总共有+ 1个线条画字符。 刻度应使用╵和│根据输入间隔在垂直方向上延长半字符。 相对于之前的间隔,间隔从最小到最大列出。详细说明: 第一个间隔告诉第二个最小间隔(最小间隔为1)中有多少个基本刻度(第一行-每个刻度一个字符)。例如,[3]将每三个刻度延长半个字符。 第二个间隔和后续间隔是下一个最小间隔。例如,[3,5]将每15个基本刻度增加一个完整字符,[3,5,2]将每30个基本刻度增加一个字符半。 子间隔为1是有效的,并且有效地表示最后一个间隔行以完整字符而不是半字符延长。 示例测试用例应有助于阐明其工作原理。 示例/测试用例 3,[]: ┌┬┬┐ 9,[3]: ┌┬┬┬┬┬┬┬┬┐ ╵ ╵ ╵ ╵ 30,[5,2]: ┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐ │ ╵ │ ╵ │ ╵ │ 32,[4,2,2,2]: ┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐ │ ╵ │ ╵ │ ╵ │ ╵ │ │ ╵ │ 48,[5,3,2] ┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐ │ ╵ …

5
画一条由换向器制作的路径
这个挑战发生在网格上。 +----------+ | | | | | | | | | | | | | | | | | | +----------+ 这个是10 x 10,但可以是任何矩形。 该网格上有四个方向。上,下,左和右。 任务是绘制从大写字母方向初始位置开始的路径。在此示例中,将从U直接向上。 +----------+ | | | | | | | | | | | | | | | | | U | +----------+ 路径将向上并且由句号(。)组成,直到碰到墙为止,然后以星号(*)终止。 +----------+ | …
25 code-golf 

14
我的电影有多令人沮丧?
我的父母有家庭影院设备。遥控器坏了,很难在菜单中向右导航。大多数情况下,它不起作用,但是当它起作用时,它会迅速向右快速移动。 这显然很令人沮丧,但是当您想要输入需要导航如下所示的键盘的电影标题时,这最令人沮丧: a b c d e f g h i j k l m n o p q r s t u v w x y z 1 2 3 4 5 6 7 8 9 0 您的任务是将电影标题作为输入并计算键入该电影标题的“令人沮丧”程度。特定字符串的无奈数是需要从其前面的字母开始右移的字母的数量。我们不在乎它们有多远,因为如果我们开始向右移动,我们几乎会立即到达行尾,并且我们也不在乎向上,向下或向左移动,因为它们很容易。 例如,如果我们想输入 keyboard 我们从k免费开始。 e就在上方,k因此我们不需要向右移动。 y 一路向左,因此无需向右移动。 b 但是,它在下一列的右侧,因此我们需要向右移动才能到达。 o 在下一列上,因此我们必须向右移动才能到达。 a …
25 code-golf  string 

28
让我变元
背景 对于此挑战,“元序列”将被定义为一系列数字,其中不仅数字本身会增加,而且增量也会增加,并且增量将增加值,依此类推。 例如,第3层元序列将从以下内容开始: 1 2 4 8 15 26 42 64 93 130 176 因为: 1 2 3 4 5 6 7 8 9 >-| ↓+↑ = 7 | Increases by the amount above each time 1 2 4 7 11 16 22 29 37 46 >-| <-| | Increases …

30
正如程序员所说:努力变得懒惰
故事 您看过9gag的这篇文章吗?也许您有自己的句子的感觉。但是随后您意识到,您只需要半个小时就可以打高尔夫球,而您将不必再花时间在上面。 提交 您的程序将获得一个输入字符串,该字符串将以加引号的形式返回,如下所述。禁止出现标准漏洞。允许输出为行列表。允许使用不影响输出的尾随空格和空行。 输入规则 输入仅包含可打印的ASCII字符。 输入中可能包含空格。单词是由它们决定的。 保证一个空间永远不会跟着另一个空间。 没有输入或空字符串的情况无关紧要。 输出规则 如果给出了一个单词,则程序必须在引号之间返回字符串。 如果输入字符串包含2个或更多单词,则它首先返回初始输入,但第一个单词用引号引起来。然后在下一行,它返回初始输入,但第二个单词用引号引起来。剩下的话依此类推。 通常,程序必须返回与输入中的单词一样多的行。 例子: test -> "test" This is codegolf -> "This" is codegolf This "is" codegolf This is "codegolf" This is a significantly longer, but not the longest testcase -> "This" is a significantly longer, but not the longest …
25 code-golf  string 

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.