Questions tagged «decision-problem»

对于涉及确定输入是否满足特定条件的挑战,以及输出代表该决策的一些数据。

30
挑战数组#1:交替数组
交替阵列 一个交替阵列是其中两个(不一定不同)值交替的任何长度的列表。也就是说,所有偶数索引项都相等,所有奇数索引项都相等。 您的任务是编写一个程序或函数,当给出正整数列表时,如果该程序或函数truthy是交替的,falsy则输出/返回。 这是代码高尔夫球,因此最短的代码(以字节为单位)获胜! 边缘案例: [] -> True [1] -> True [1,1] -> True [1,2,1] -> True 其他测试用例: [1,2,1,2] -> True [3,4,3] -> True [10,5,10,5,10] -> True [10,11] -> True [9,9,9,9,9] -> True [5,4,3,5,4,3] -> False [3,2,1,2,1,2] -> False [1,2,1,2,1,1,2] -> False [2,2,3,3] -> False [2,3,3,2] -> False 例 这是一个示例,您可以使用Python …

30
天哪,吉萨高尔夫!
“吉萨数”(俗称“ 蒂米数”)是指数字代表金字塔的任何数字(A134810)。例如,“ 12321”是一个吉萨数字,因为它可以像这样可视化: 3 2 2 1 1 但是,“ 123321”之类的字符不是吉萨币,因为金字塔的顶部有两位数字 33 2 2 1 1 换句话说,如果满足以下所有条件,则数字为吉萨数: 它的位数是奇数,中间的数字是最大的 它是回文的(相同的向前或向后读取),并且 数字的前半部分严格增加一个。(由于必须是回文,这意味着数字的后半部分必须严格减少一位) 您必须编写一个采用正整数作为输入的完整程序或函数,并确定它是否为吉萨数。您可以将输入作为字符串或数字。如果它是吉萨数,则输出真实值。否则,将产生虚假的值。 共有45个吉萨数字,因此这些输入中的任何一个都应产生真实值: 1 2 3 4 5 6 7 8 9 121 232 343 454 565 676 787 898 12321 23432 34543 45654 56765 67876 78987 1234321 2345432 3456543 4567654 5678765 …

30
是a年吗?
这个挑战很简单。您将输入从1801到2400的年份,如果不是output年则输出。 您的输入将没有换行符或尾随空格: 1954 您将以自己喜欢的任何方式输出,以清楚地告诉用户是否是a年(我将接受y或n作为是/否)。 您可以在此处获得of年列表:http : //kalender-365.de/leap-years.php 我要指出的是leap年并非总是4年。1896年是a年,但1900年不是a年。此“跳过”之后的年份是: 1900 2100 2200 2300 测试用例: 1936 -> y 1805 -> n 1900 -> n 2272 -> y 2400 -> y 编辑:这是基于标准的格里高利历:http : //www.epochconverter.com/date-and-time/daynumbers-by-year.php

12
紧密联系的挑战
无聊时我有时会做的一项活动是成对地写几个字符。然后,我画线(从不超过顶部)连接这些字符。例如,我可能会写a b c b a cabcbacabcbac,然后将线画为: 或者我可能会写a b b c a cabbcacabbcac 绘制完这些线条后,我会尝试在块周围绘制闭合循环,以使我的循环不会与我刚刚绘制的任何线条相交。例如,在第一个循环中,我们可以绘制的唯一循环是围绕整个对象,但是在第二个循环中,我们可以绘制仅围绕bbb的循环(或其他所有东西) 如果我们花一点时间来研究它,我们会发现只能绘制一些字符串,以便闭环包含所有字母或不包含所有字母(如第一个示例)。我们将这些字符串称为链接良好的字符串。 请注意,某些字符串可以多种方式绘制。例如,b b b bbbbbbbbb可以通过以下两种方式绘制(不包括第三种): 要么 如果可以绘制这些方式中的一种,从而可以使闭环包含一些字符而不与任何行相交,则该字符串未很好地链接。(所以b b b bbbbbbbbb没有很好地链接) 任务 您的任务是编写一个程序来识别链接良好的字符串。您的输入将由一个字符串组成,其中每个字符均出现偶数次,并且您的输出应为两个不同的一致值之一,如果字符串连接正确,则为一个,否则为另一个。 另外你的程序必须是一个很好地链接字符串意义 每个字符在程序中出现偶数次。 通过时应输出真实值。 您的程序应该能够为由可打印ASCII或您自己的程序中的字符组成的任何字符串产生正确的输出。每个字符出现偶数次。 答案将以其长度(以字节为单位)进行评分,而字节越少越好。 暗示 如果存在连续的非空严格子字符串,则字符串连接不正确,从而每个字符在该子字符串中出现偶数次。 测试用例 abcbac -> True abbcac -> False bbbb -> False abacbc -> True abcbabcb -> True abcbca -> …

30
寻找灵魂伴侣
鉴于整数的非空有限列表,输出truthy如果恰好有两个相等的条目和所有其他条目是不同的值,并且falsey否则值。 例子 truthy: [1,1] [1,2,1] [1,6,3,4,4,7,9] falsey: [0] [1,1,1] [1,1,1,2] [1,1,2,2] [2,1,2,1,2] [1,2,3,4,5]

30
我是微不足道的阵列吗?
一个微不足道阵列是正整数,其中连续元素之间的绝对差均小于或等于的阵列1。 例如,以下数组无关紧要: [1, 2, 3, 4, 3, 4, 5, 5, 5, 4] 因为相应的(绝对)差异是: [1, 1, 1, 1, 1, 1, 0, 0, 1] 全部小于或等于1。 您的任务是确定给定的整数数组是否不重要。 您可以假定数组始终包含至少两个元素。 标准输入和输出规则适用。您可以采用任何合理的格式输入(和输出)。 默认漏洞是禁止的。 真实/虚假的值必须是不同且一致的。 这是代码高尔夫球,因此最短答案以字节为单位。 测试用例 输入->输出 [1、2、3、4、3、4、5、5、5、4]-> true [1、2、3、4、5、6、7、8、9、8]-> true [3,3,3,3,3,3,3]-> true [3,4,4,4,3,3,3,4,4,4]-> true [1、2、3、4]->是 [5、4、3、2]->是 [1、3、5、7、9、7、5、3、1]->否 [1、1、1、2、3、4、5、6、19]->否 [3,4,5,6,7,8,7,5]->否 [1、2、4、10、18、10、100]->否 [10,20,30,30,30]->错误 我使用了值true和false。

30
我可以将数字总和除以两倍吗?
给定一个正整数作为输入,如果数字可被其数字总和的两倍整除,则您的任务是输出一个真值,否则将输出一个假值(OEIS A134516)。换一种说法: (sum_of_digits)*2 | number 您可以为真/假情况指定任何有限的值集,而不是为真/假情况的真/假值,并用它们补充其他值。举一个简单的例子,您可以使用0真数字,而所有其他数字用于假数字(如果愿意,反之亦然)。 标准输入和输出规则适用。默认漏洞也适用。 您可以将输入作为整数或该整数的字符串表示形式。 这是代码高尔夫球,因此以字节为单位的最短代码获胜! 我是PPCG的新手,因此,如果可能的话,我希望您发表解释。 测试用例 输入-输出-(原因) 80-真实-(16除以80) 100-真实-(2除以100) 60-真实-(12除以60) 18-Truthy-(18除以18) 12-真实-(6除数12) 4-虚假-(8不除以4) 8-虚假-(16不除8) 16-虚假-(14不除以16) 21-虚假-(6不除21) 78-虚假-(30不除以78) 110-虚假-(4不did 110) 111-虚假-(6不除111) 390-虚假-(24不除以390)

6
检测失败的城堡
据我所知,引力的有趣方面之一是,您不能只让物体漂浮在空中。 但是,似乎并不是每个城堡建设者协会的人都知道这一事实,导致了像这样的城堡的出现: # # # # # # ### #### #### # # #### # # #### ### ############## ### ###### ###### ### ##### ##### ### ### `````````````````````````````` 还有这个: # # # # # # ############## ### #### ### # # # # # # # # ### #### ### …

30
大量的整数!
一个丰富的数字是任何数,其中其应有的除数的总和比原来的数量。例如,12的适当除数是: 1, 2, 3, 4, 6 并将这些结果相加为16。由于16大于12,因此12丰富。请注意,这并没有包括“完美号”,例如数字是等于其适当除数的总和,如6和28。 今天的任务是编写确定数字是否丰富的程序或函数。您的程序应采用单个整数作为输入,并根据其是否丰富输出真/假值。您可以假设输入将始终有效且大于0,因此对于错误的输入,可以使用未定义的行为。 您可以采用任何合理的格式输入和输出,例如STDIN / STDOUT,文件或参数/返回值都可以接受。 作为参考,以下是多达100个的大量数字: 12, 18, 20, 24, 30, 36, 40, 42, 48, 54, 56, 60, 66, 70, 72, 78, 80, 84, 88, 90, 96, 100 在A005101上可以找到更多信息 由于这是代码缺陷,因此会拒绝标准漏洞,并尝试使用碰巧选择的任何一种语言编写尽可能短的代码!

30
有颠簸吗?
给定一个正整数列表,确定是否有一个元素大于其两个邻居或小于其两个邻居(“凸点”)。需要明确的是,颠簸永远不会成为列表的第一或最后一项,因为它们只有一个邻居。 您的程序应输出两个一致的值之一,每个值对应于一个没有凹凸的列表或一个带有凹凸的列表。这些值无关紧要,您可以自己选择它们。 这是代码高尔夫球,因此答案将以字节计分,而字节数越少越好。 测试用例 [] -> False [1] -> False [1,2] -> False [1,2,1] -> True [1,2,2] -> False [1,2,3] -> False [1,2,2,1] -> False [1,2,2,3] -> False [1,2,1,2] -> True [1,3,2] -> True [3,1,2] -> True [2,2,2] -> False

22
自然派#0-摇滚
目标 创建一个接受输入的程序/函数N,检查N随机整数对是否相对质数,然后返回sqrt(6 * N / #coprime)。 TL; DR 这些挑战是仅需要自然和大脑(也许还有一些可重复使用的资源)才能逼近Pi的算法模拟。如果您在僵尸启示录期间确实需要Pi,那么这些方法不会浪费弹药!还有另外八个挑战。检出沙盒帖子以提出建议。 模拟 我们在模拟什么?好吧,两个随机整数是相对质数(即coprime或gcd == 1)的概率是6/Pi/Pi,因此计算Pi的自然方法是挖出两个桶(或少数几个)的岩石。数他们;看看他们的gcd是否为1;重复。这样做后,一对夫妇很多次,sqrt(6.0 * total / num_coprimes)会趋向Pi。如果计算世界末日后的平方根使您感到紧张,请不要担心!有牛顿法。 我们如何模拟这一点? 接受输入 N 请执行以下N次数: 均匀生成随机正整数,i并且j 用 1 <= i , j <= 10^6 如果gcd(i , j) == 1:result = 1 其他: result = 0 取N结果的总和,S 返回 sqrt(6 * N / S) 规格 输入值 …
39 code-golf  math  random  pi  approximation  popularity-contest  code-golf  sequence  number-theory  binary  coding-theory  code-golf  math  3d  code-golf  code-golf  math  number  code-golf  kolmogorov-complexity  code-golf  ascii-art  graphical-output  binary-tree  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation  hexadecimal  code-golf  math  number  set-theory  code-golf  math  arithmetic  number-theory  integer  code-golf  string  kolmogorov-complexity  code-golf  math  sequence  arithmetic  decision-problem  code-golf  code-golf  ascii-art  code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

30
可除性测试
任务 给定两个严格的正整数n和d作为输入,请确定n是否可被d 整除,即是否存在整数q使得n = qd。 您可以编写程序或函数,并使用我们的任何标准方法来接收输入和提供输出。 输出应该是真实值或虚假值;如果n可被d整除,则为真;否则为f。 您的代码只需要处理可以本机表示的整数,只要它适用于所有带符号的8位整数即可。但是,您的算法必须适用于任意大整数。 您可以使用任何编程语言,但是请注意,默认情况下,这些漏洞是禁止的。 这是代码高尔夫球,因此以字节为单位的最短有效答案为准。 测试用例 n, d output 1, 1 truthy 2, 1 truthy 6, 3 truthy 17, 17 truthy 22, 2 truthy 1, 2 falsy 2, 3 falsy 2, 4 falsy 3, 9 falsy 15, 16 falsy 排行榜 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language …

9
“便捷回文”检查器
如果您曾经尝试编写回文代码,那么您会知道会遇到多少括号。()()是不是回文,即使它还挺看起来像它应该的,而())(和()(都是回文和两个非常愚蠢的期待。如果不是这样的话,会不会很方便? 如果一个字符串等于其所有括号(),方括号()和花括号()颠倒时所得到的字符串,则该字符串很容易回文。没有其他特殊字符需要翻转。(有时会配对,但通常不会配对,因此被忽略了。)()[]{}<> 您的任务是用您的语言编写一个程序(接受STDIN的输入)或一个函数(接受单个字符串参数),该程序(a)当其参数为回文形式且给出不同的,一致的false时,给出一致的真值* (b)本身很方便回文。 例如,以下输入通常是回文的: racecar (a)(bb)(a) void main(int argc, *char[] argv) {} (vgra []rahc* ,cgra tni)niam diov 并且以下不是: non-palindrome A nut for a jar of tuna? (old [style] parens) )snerap ]elyts[ dlo( ingirumimusnocte)etconsumimurigni 除了解释器/编译器标志之外,您不得依赖任何外部状态(特定的文件名,目录结构,其他用户输入,Web访问等)。 另外,您不得使用“注释技巧”来注释掉或通过利用语言的注释功能来渲染未使用的某些代码。例如,不允许以下所有操作,因为它们包含可以安全地移除或销毁的非功能性部件(以失去回文性为代价): {some code} // {edoc emos} {some code} NB.BN {edoc emos} "n\" ;{edoc emos} ;"; …

30
这个数字是阶乘吗?
任务 给定一个自然数作为输入,您的任务是根据输入是否为任何自然数的阶乘来输出真值或假值。您可以假定输入数字将始终在您的语言支持的数字范围内,但是您一定不能滥用本机数字类型来解决问题。 适用标准漏洞。 输入值 系统会为您提供自然数(类型Integer或类似数字)。 您可以采用任何所需的输入方式,但前提是要假定其位于预定义变量中。prompt允许从文件,控制台,对话框(),输入框等进行读取。也可以作为函数参数输入! 输出量 您的程序应根据输入数字是任何自然数的阶乘来输出真实或错误值。 确保所有输入的真实/假值都一致,即,如果您使用一对1和0分别表示真实和假值,那么您的程序必须为应该具有真实值的所有输入输出1,而对于所有输入则为0。所有应具有假值的输入。 除了将其写入变量之外,您可以采用任何所需的输出方式。允许写入文件,控制台,屏幕等。功能也return被允许! 您的程序不得对任何输入产生错误! 测试用例 Input Output 1 Truthy (0! or 1!) 2 Truthy (2!) 3 Falsey 4 Falsey 5 Falsey 6 Truthy (3!) 7 Falsey 8 Falsey 24 Truthy (4!) 120 Truthy (5!) 获胜标准 这是代码高尔夫球,因此以字节为单位的最短代码胜出!

13
零和保障
介绍 考虑一个非空整数列表L。甲零和切片的大号是的连续子序列大号其总和等于0。例如,[1,-3,2]是零和切片[-2,4,1,-3,2,2 ,-1,-1],但[2,2]不是(因为它的总和不为0),[4,-3,-1]也不是(因为它不连续)。 的零和切片的集合大号是零和盖的大号如果每一个元素属于切片中的至少一个。例如: L = [-2, 4, 1, -3, 2, 2, -1, -1] A = [-2, 4, 1, -3] B = [1, -3, 2] C = [2, -1, -1] 三个零和切片A,B和C构成L的零和覆盖。同一切片的多个副本可以出现在零和封面中,如下所示: L = [2, -1, -1, -1, 2, -1, -1] A = [2, -1, -1] B = [-1, -1, 2] …

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.