Questions tagged «classification»

这项挑战要求根据数据的属性用某种类别标记输入数据。

3
标记基于堆栈的语言
我一直在研究另一种称为Stackgoat的基于堆栈的高尔夫语言。在这个挑战中,您将为Stackgoat(或实际上是任何通用的基于堆栈的语言)编写Tokenizer。 例子 "PPCG"23+ ["PPCG", '23', '+'] 'a "bc" + ['"a"', '"bc"', '+'] 12 34+-"abc\"de'fg\\" ['12', '34', '+', '-', '"abc\"de'fg\\"'] "foo ['"foo"'] (empty input) [] ' "" ['" "', '""'] 规格 您需要处理的三种类型是: 弦乐,什么内"" 数字,任何数字序列 运算符,除空格外的任何其他单个字符 除非将其留在字符串中或将两个数字分隔开,否则实际上将忽略空格。 字符串/字符规范: 字符串以分隔",当\遇到时,下一个字符应转义。 字符前面加a ',后面的字符'应转换为字符串文字。'a->"a" ' 后面总会有一个角色 右引号应自动插入 规则: 没有形式eval允许 输入输出: 可以通过STDIN,函数参数或您的语言等效输入。 输出应为数组或您的语言最接近的等效数组。
15 code-golf  parsing  code-golf  hexagonal-grid  code-golf  string  code-golf  string  code-golf  combinatorics  code-golf  ascii-art  code-golf  string  game  counting  code-golf  arithmetic  complex-numbers  code-golf  string  code-golf  decision-problem  hexagonal-grid  code-golf  string  sequence  code-golf  number  arithmetic  code-golf  ascii-art  code-golf  ascii-art  code-golf  string  arithmetic  code-golf  number  simulation  code-golf  number  arithmetic  code-golf  string  sequence  unicode  code-golf  string  ascii-art  balanced-string  code-golf  number  clock  code-golf  ascii-art  number  code-golf  math  number  sequence  code-golf  string  ascii-art  balanced-string  code-golf  math  string  popularity-contest  graphical-output  image-processing  code-golf  string  permutations  code-golf  string  code-golf  random  code-golf  string  cryptography  palindrome  code-golf  chess  code-golf  math  array-manipulation  topology  code-golf  math  sequence  code-golf  keyboard  classification  code-golf  string  sequence  code-golf  natural-language  code-golf  math  number  sequence  sorting  code-golf  sequence  combinatorics  grid  tic-tac-toe  code-golf  geometry  code-golf  number  restricted-source  new-years  expression-building 

5
二进制卷积
二进制卷积由数字描述M,并应用于数字N。对于的二进制表示形式中的每个位M,如果将该位设置为(1),则通过将与相应位中的相应位相邻的两个位进行XOR N(在必要时进行环绕)来给出输出中的相应位。如果未设置该位(0),则输出中的相应位由中的相应位给出N。 一个有效的示例(具有8位值): 让N = 150,M = 59。它们的二进制表示形式分别为10010110和00111011。 根据M的二进制表示形式,卷积0、1、3、4和5。 位0的结果由对位1和7进行XOR运算得出(因为我们进行了环绕),得出1。 位1的结果由位0和2的XOR运算得出0。 位2的结果由原始位2给出,即1。 第3位的结果由第2位和第4位的XOR运算得出0。 位4的结果由位3和5的XOR运算得出0。 第5位的结果由第4位和第6位的XOR运算得出1。 位6和7的结果由原始位6和7给出,得出0和1。 因此,输出为10100110(166)。 挑战 给定N和M,输出执行Mon上描述的二进制卷积的结果N。输入和输出可以采用任何方便,一致且明确的格式。N并且M将始终在(包括)范围内[0, 255](8位无符号整数),并且应将其二进制表示形式填充为8位以执行二进制卷积。 测试用例 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

14
递归级联[N]的累积和与M次迭代
取两个正整数N,M并[N]通过M迭代创建的串联累积和。输出最后一次迭代的结果。 串联累积和的定义: 以数字开头N并定义顺序X = [N] 追加到X的累积和X 重复步骤2 M次。 向量的累加和X = [x1, x2, x3, x4]为:[x1, x1+x2, x1+x2+x3, x1+x2+x3+x4]。 N = 1和的示例M = 4: P =累积和函数。 M = 0: [1] M = 1: [1, 1] - X = [1, P(1)] = [[1], [1]] M = 2: [1, 1, 1, 2] - X …
14 code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

15
井字游戏-X或O?
背景 如果您熟悉井字游戏,请跳到“任务”(我想大多数人是!) 井字游戏是一款著名的两人游戏。它由一个3x3的棋盘组成,由两个玩家逐渐填充(以下说明);第一个玩家使用角色X,另一个使用O。获胜者是第一个获得水平,垂直或对角线连续3个相同字符(X或O)的人。如果棋盘已满,并且没有一个玩家设法获得上述连续的三个角色,则游戏以平局结束。请注意,如果任一位玩家的胜利总数少于9步(如果出现平局,则不会发生),游戏结束时可能会有空位。 任务 给定游戏结束时的井字游戏板(以字符串,矩阵,9个有序值的平面列表以及任何其他体面格式的形式),确定谁赢了游戏。 输入将包含不同且一致的值,一个表示X,一个表示O,另一个表示空白。 您的程序应该能够输出3个不同的,一致的和非空的值:一个以防万一X,另一个以防万一O如果玩家并列,则为另一个。 请在答案中指定这些值。您可以假定输入将是有效的井字游戏板。 测试用例 X,O,_在这里的输入值; X wins,O wins并Tie用于输出。 X O X O X _ O _ X 输出:X wins。 X _ O X O _ X O X 输出:X wins。 X O X _ O X _ O _ 输出:O wins。 X O X O …

29
怪异的评分系统
Weirdo Incorporates有一种奇怪的方法,可以根据员工在办公室的工作天数来对其员工进行评分: 0 - 13 : F 14 - 170 : E 171 - 180 : D 181 - 294 : C 295 - 300 : B 301 - 365 : A Note: The range is inclusive (i.e. 0-13 means 0 days and 13 days both will evaluate as grade …

2
那是谁的多边形?
表示拓扑表面的一种方便且有用的方法是使用基本多边形。多边形的每一侧都与另一侧匹配,并且可以是平行的或反平行的。例如,这是圆环的基本多边形: 为了弄清楚为什么这是一个圆环,我们可以想象我们的多边形是一张纸。为了制作适当的表面,我们希望弯曲纸张,以使相应的边缘与箭头的方向相同。对于我们的圆环示例,我们可以从将纸卷成圆柱体开始,以便连接两个蓝色边缘(标记为b)。现在,我们将试管弯曲并将其两个红色边缘(标记为a)彼此连接。我们应该有一个甜甜圈形状,也称为圆环形状。 这可能会有点棘手。如果您尝试对以下多边形进行相同处理,则其中一个边沿相反的方向移动: 您可能会遇到麻烦。这是因为此多边形代表的Klein瓶子无法嵌入三个维度。这是维基百科的图表,显示了如何将这个多边形折叠成Klein瓶子: 您可能已经猜到了,这里的任务是获取基本多边形并确定其为哪个表面。对于四个面的多边形(您将需要处理的唯一曲面),有4个不同的曲面。 他们是 圆环面 克莱因瓶 球 投射平面 现在不是 图像处理,因此我不希望您将图像作为输入,而是使用方便的符号来表示基本多边形。您可能已经注意到,在上面的两个示例中,我用相同的字母(a或b)命名了相应的边,并且给扭曲的边附加了一个标记以显示其扭曲。如果我们从上边缘开始并沿顺时针方向写下每个边缘的标签,我们将得到一个表示每个基本多边形的符号。 例如,提供的Torus将变为abab,而Klein瓶将变为ab - ab。对于我们的挑战,我们将使其变得更加简单,而不是用负号标记扭曲的边缘,而改为将那些字母大写。 任务 给定一个字符串,确定它是否代表基本多边形,并输出一个与其正确表面相对应的值。您无需精确命名表面,只需要4个输出不同的值即可,每个值代表4个表面之一,第5个值代表不正确的输入。所有基本案例都包含在“ 简单测试”中部分介绍,每辆车将同构或无效。 规则 侧面将不会总是用a和b标记,但是它们总是会用字母标记。 有效输入将包含4个字母,其中两个是一种类型,而另外两种是两种类型。您必须始终输出正确的表面以进行有效输入。 您应该拒绝(不输出代表曲面的4个值中的任何一个)无效输入。拒绝输入时,您可以执行任何操作,只要它可以与4个表面区分开即可 这是代码高尔夫球,因此目标是最大程度地减少源代码中的字节数。 测验 简单测试 abab Torus abAb Klein Bottle abaB Klein Bottle abAB Projective Plane aabb Klein Bottle aAbb Projective Plane aabB Projective Plane aAbB Sphere abba Klein Bottle …

17
十行条形图
这是APL CodeGolf 秋季比赛的 Hole-1 。我是该问题的原始作者,因此可以在此处重新发布。 给定一个数字列表,请生成一个水平的#字符条形图,以显示十个相等大小的组中每个组可容纳多少个数字。例如,如果数据的范围是0-100,则范围将是0–9.9、10–19.9,…,90–100。(通常为[0,10),[10,20),…,[90,100]。)您可能会假设至少会有两个数字,并且并非所有数字都相同。 例子: [1,0,0,0,0,0,0,0,0,0] 给出: ######### # [0,1,2,3,4,5,6,7,8,9] 给出: # # # # # # # # # # [0,1,2,3,4,5,6,7,8,9,10] 给出: # # # # # # # # # ## [0,1,2,3,4,5,6,7,8,9,10,11] 给出: ## # # # # # # # # ## [0,-0.5,-1,-1.5,-2,-2.5,-3,-3.5,-4,-4.5,0.5,0,-0.5,-1,-1.5,-2,-2.5,-3,-3.5,-4,1,0.5,0,-0.5,-1,-1.5,-2,-2.5,-3,-3.5,1.5,1,0.5,0,-0.5,-1,-1.5,-2,-2.5,-3,2,1.5,1,0.5,0,-0.5,-1,-1.5,-2,-2.5,2.5,2,1.5,1,0.5,0,-0.5,-1,-1.5,-2,3,2.5,2,1.5,1,0.5,0,-0.5,-1,-1.5,3.5,3,2.5,2,1.5,1,0.5,0,-0.5,-1,4,3.5,3,2.5,2,1.5,1,0.5,0,-0.5,4.5,4,3.5,3,2.5,2,1.5,1,0.5,0] 给出: ### …

2
这是Lojban中有效的辅音词组吗?
.i xu .e'o lo zunsnagri cu drani loka jboge'a 给定输入由两个字符组成的字符串,输出是否在Lojban中是有效的辅音簇。 这是CLL 3.6的引文,详细列出了有效辅音对(或无效对)的规则: 1) It is forbidden for both consonants to be the same, as this would violate the rule against double consonants. 2) It is forbidden for one consonant to be voiced and the other unvoiced. The consonants “l”, “m”, …

19
进行查找索引
给定一个字符串,返回一个表,其中第一列按出现的顺序具有该字符串的唯一字母,随后的列使用零或基于一的索引列出该字母在字符串中的索引。只要最左边的列垂直对齐,水平空格就没有关系。索引必须按从左到右的升序排列。 例子 使用从零开始的索引并给定“ abracadabra”,返回 a 0 3 5 7 10 b 1 8 r 2 9 c 4 d 6 使用基于一个的索引并给定“ 3141592653589793238462643383279503”,返回: 3 1 10 16 18 25 26 28 34 1 2 4 4 3 20 24 5 5 9 11 32 9 6 13 15 31 2 7 …

9
多边形数!
介绍 在数学中,多边形数是表示为以规则多边形形状排列的点或小卵石的数字。点被认为是alpha(单位)。这些是二维图形数字的一种类型。 例如,数字10可以排列成三角形: * ** *** **** 但是不能将10布置成正方形。另一方面,数字9可以是: *** *** *** 一些数字(例如36)既可以布置为正方形,也可以布置为三角形: ****** * ****** ** ****** *** ****** **** ****** ***** ****** ****** 按照惯例,1是任何数量的边的第一个多边形。将多边形放大到下一个尺寸的规则是将两个相邻的臂延伸一个点,然后在这些点之间添加所需的额外边。在下图中,每个额外的层都显示为红色。 三角数: 平方数: 尽管点不再像上面那样形成完全规则的晶格,但也可以根据此规则构造边数更多的多边形,例如五边形和六边形。 五角数字: 六角数: 资料来源:维基百科 你的任务 给定正整数N(1 <= N <= 1000),则打印每种类型的多边形N都是从三角数开始,直至包括余角(20角)数。 例如,数字10是一个三角数和一个十进制数,因此输出应类似于(您可以选择自己的输出格式,但看起来应该像这样): 3 10 测试用例 1 -> 3 4 5 6 7 8 9 …

3
这个词是女性还是男性?
写一个程序或函数,它在一个字符串只包含小写字母AZ,并打印或返回truthy值,如果这个词是女性的它所代表的事物和版本falsy值,如果它是阳刚的版本。例如,hen是鸡肉的女性版本和rooster男性的版本,因此hen可能会产生1并rooster可能产生0。 对于所有反映性别的英语单词这样做当然太笨拙了。您的程序/功能仅需要支持20对男性/女性对。以下是按主题分类的五组,每组10对男性/女性。选择其中两个集合;这两组中的20对总数是您的程序/功能必须使用的40个单词。 (格式为masculine_version feminine_version) 一般 he she him her man woman boy girl male female masculine feminine guy gal lad lass mister miss sir madam 家族式 father mother dad mom pa ma son daughter brother sister husband wife grandfather grandmother grandpa grandma uncle aunt nephew niece 动物 lion lioness rooster …

5
洋葱还是不是洋葱?
The Onion(警告:许多文章都是NSFW)是一个讽刺性新闻机构,模仿传统新闻媒体。2014年,The Onion推出了ClickHole(警告:也经常是NSFW),这是一个讽刺性新闻网站,模仿了诸如BuzzFeed之类的“ clickbait”网站。多亏了坡定律,人们才经常阅读The Onion或ClickHole上的文章标题,并相信它们是真实的,而不知道它们是要讽刺的。相反,在听起来可笑的真实新闻故事中也会发生这种情况-人们常常以为自己是讽刺作家,而不是。 这种困惑自然很适合游戏-给定新闻头条,尝试猜测它是否讽刺。挑战在于如何使用程序来做到这一点。 给定新闻标题(仅由可打印的ASCII字符和空格组成的字符串),1如果标题是讽刺,或者0不是,则输出。您的分数将是正确输出的数量除以标题总数。 按照惯例,不允许出现标准漏洞(尤其是针对测试用例进行优化)。为了实现这一点,我将在一组200个隐藏的测试用例上运行您的程序(The Onion中有100个,Not The Onion中有100个)。您的解决方案的分数必须比公共测试用例的分数少不超过20个百分点才能生效。 测试用例 为了提出针对此挑战的测试案例,我从The Onion subreddit中选择了25个标题(在The Onion及其子站点(如ClickHole)上发布了文章),从Not The Onion subreddit中选择了 25个标题(其中包含真实新闻)听起来像是讽刺)。我对标题所做的唯一更改是将“花式”引号替换为常规ASCII引号并标准化了大写字母-其他所有内容在原始文章的标题中均保持不变。每个标题都在自己的行上。 洋葱头条 Trump Warns Removing Confederate Statues Could Be Slippery Slope To Eliminating Racism Entirely 'No Way To Prevent This,' Says Only Nation Where This Regularly Happens My Doctor Told Me …

3
在Wythoff矩阵模2中打印特定值
Wythoff矩阵是一个无限矩阵,由Wythoff游戏中棋盘上每个正方形的格朗迪数组成。 此矩阵中的每个条目都等于最小的非负数,该数字不出现在条目位置的上方,左侧或对角线西北方。 左上方20乘20的正方形如下所示: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 2 0 4 5 3 7 8 6 10 11 9 13 14 12 16 17 15 19 20 2 0 1 5 3 4 8 …

3
什么可以分配给什么?
有关 什么可以分配给什么? 在本次挑战中,您将获得两种类型,A并B确定A是可分配给B,B可分配给A还是都不分配。 类型系统 (我将t用来表示任何类型) 基本类型 基本类型用单个大写字母表示,例如X。它们基本上是类。 X是分配给Y如果Y是任一相同,或父类X。 交叉点类型 交集类型由表示intersect<X, Y>,并且在之间可以具有任意数量的类型<(例如intersect<X, Y, Z, D, E>)。 t可以分配给intersect<X1, X2... Xn>if t可以分配给all X。 intersect<X1, X2... Xn>是分配给t如有X可分配给t。 联合类型 联合类型由表示,union<X, Y>并且之间可以有任意多种类型<(例如union<X, Y, Z, D, E>)。 t可分配给union<X1, X2... Xn>if t,可分配给any X。 union<X1, X2... Xn>t如果所有X都可分配给,则可分配给t。 输入值 您将收到以下输入: 类层次结构。您可以为类层次结构选择输入方法。您可以输入树的表示形式,或者输入每种类型的树及其父级列表,或者输入任何其他能准确表示类层次结构的形式。 两种类型(输入是灵活的,只要符号一致,您就可以随意接收这些类型)。 输出量 您将在三个一致和不同值的输出之一,给他们打电话X,Y和Z。鉴于两种类型A和B输出X,如果A是分配给B输出Y,如果B是分配给A和输出Z,否则(如果A是分配给B和B可分配给A,你可以输出X,Y,这两者或第四值)。 测试用例 格式: # of types [type, …

8
Golf K-means算法
K-means是一种标准的无监督聚类算法,在给定一组“点”和多个K聚类的情况下,它将将每个“点”分配给K个聚类之一。 K均值的伪码 注意,K-means有很多变体。您必须实现我在下面描述的算法。只要给定相同的初始点,您可以获得与该算法相同的结果,就可以对算法进行一些更改或使用内置函数。 在此挑战中,所有输入将是2D平面上的点(每个点由其在x和y中的坐标表示)。 Inputs: K, the number of clusters P, the set of points Choose K points of P uniformly at random Each chosen point is the initial centroid of its cluster Loop: For each point in P: Assign to the cluster whose centroid is the nearest (Euclidean distance) …

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.