Questions tagged «sorting»

此挑战旨在通过排序,排序或以其他方式组织一些数据集来解决。

2
魔方排序矩阵(又称圆环拼图)
这种代码挑战的想法很简单:给定整数矩阵,让我们通过应用Rubik风格的移动对其进行排序。这意味着您可以选择单个行或列,并向任意方向旋转其元素: [1, 3, 2, 4] => [3, 2, 4, 1] (rotate left for rows/up for columns) [1, 3, 2, 4] => [4, 1, 3, 2] (rotate right for rows/down for columns) 因此,给定任意维度的整数矩阵,仅应用这些Rubik样式的转换对其元素进行排序。矩阵 ⎡⎣⎢一种11一种21一种31一种12一种22一种32一种13一种23一种33一种14一种24一种34⎤⎦⎥[一种11一种12一种13一种14一种21一种22一种23一种24一种31一种32一种33一种34] \begin{bmatrix} a_{11} & a_{12} & a_{13} & a_{14} \\ a_{21} & a_{22} & a_{23} & a_{24} \\ …

20
分解一个数字!
您的任务是使用以下格式分解数字。 这与基本转换类似,不同之处在于digits,您列出了values,而不是在基本列表中列出,这样列表就加到了输入上。 如果给定的基为n,则列表中的每个数字都必须采用的形式k*(n**m),其中0<=k<n和m在整个列表中都是唯一的。 眼镜 任何合理的输入/输出格式。您的程序/功能需要2个输入并输出一个列表。 输出列表可以是任何顺序。 0 可以排除或包含。 0允许领导。 允许内置。 测试用例 number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

6
Code Golf:混合坚果,以免碰到任何同种坚果
输入: 输入是随机排列的螺母数组(使用您的语言),随后可能是螺母。您的程序必须具有表示每种螺母的方式,例如整数代码。程序必须能够处理任何大小的螺母配置的数组。 可能的坚果: Kola nut Macadamia Mamoncillo Maya nut Mongongo Oak acorns Ogbono nut Paradise nut Pili nut Pistachio Walnut 输出: 输出必须以没有相邻螺母种类的方式对数组进行排序。如果这不可能,则输出应为空数组。 输入示例(简体): ["walnut", "walnut", "pistachio"] 示例输出: ["walnut", "pistachio", "walnut"] 解决方案可能不会简单地随机排列数组,直到偶然地使其变得唯一。使用的排序必须是确定性的

15
城市名称游戏
如果愿意,可以编写一个根据城市名称游戏规则对城市进行排序的程序。 城市的每个名称应从前一个城市名称的最后一个字母开始。例如Lviv -> v -> Viden -> n -> Neapolis -> s -> Sidney -> y -> Yokogama -> a -> Amsterdam -> m -> Madrid -> d -> Denwer 在排序列表中,第一个城市的第一个字母和最后一个城市的最后一个字母不应该匹配,不必是相同的字母。 您可以假设城市名称只有字母。 程序输出应与输入大写相同 例: % ./script Neapolis Yokogama Sidney Amsterdam Madrid Lviv Viden Denwer ["Lviv", "Viden", "Neapolis", "Sidney", "Yokogama", "Amsterdam", …

22
对2D数组中的行和列进行块排序
给定一个2D整数数组,让我们按块对它的行和列进行排序。这意味着您只需要对给定的行或列进行排序,而是将对其进行排序所需的转换应用于2D数组中的所有其他行或列。 规则 输入将是一个2D整数数组和一个1索引整数。如果数字为正,则此整数将表示要排序的行,如果数字为负(或相反,则为整数)将表示要排序的列。示例:给定4x3(行x列)数组,您可以使用-2参数或参数对第三行进行3。第二个参数永远不会为零,其绝对值也不会大于数组的相应维数。 输出还将是一个2D整数数组,并应用了所需的转换来对给定的行或列进行排序。另外,您也可以将阵列写入STDOUT。 输出数组将具有指定的行或列,以升序排列。请注意,当您需要连续交换两个数字时,将交换数字所在的整个列。当您需要在一列中交换两个数字时,数字所在的整行将被交换。 如果相同的数字在要排序的行/列中多次出现,则根据交换值的方式可能会有几种解决方案,只需对要交换的其余行/列进行相应处理。 例子 Positive indices for rows and negative indices for columns [5 8 7 6 [1 3 2 4 1 3 2 4 order by -3 (3rd column) --> 9 6 3 0 9 6 3 0] 5 8 7 6] [5 8 7 6 …

17
XOR排序数组
给定一个键和一个字符串数组,请对该数组进行混洗,以便在每个元素与该键进行XOR运算时将其排序。 对两个字符串进行异或 要通过键对字符串进行异或,请将该键对中的每个字符值通过键中的对进行异或,以使该键永远重复。例如,abcde^123如下所示: a b c d e 1 2 3 1 2 -------------------------------------------- 01100001 01100010 01100011 01100100 01100101 00110001 00110010 00110011 00110001 00110010 -------------------------------------------- 01010000 01010000 01010000 01010101 01010111 -------------------------------------------- P P P U W 排序 排序应始终按XOR字符串的顺序进行。也就是说,1 < A < a < ~(假设ASCII编码) 例 "912", ["abcde", "hello", "test", "honk"] …

18
排序矩形矩阵
给定一个矩阵A,我们可以说,如果矩阵的每一行和每一列都A被排序(对行从左到右,对列从上到下,则是“已排序” )。因此,该矩阵被排序: [ 1 2 3 4 5 ] [ 2 2 3 4 5 ] [ 3 3 3 4 5 ] [ 4 4 4 4 5 ] [ 5 5 5 5 5 ] 但是,此矩阵未排序: [ 1 2 3 4 5 ] [ 2 1 3 4 …

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 

3
洞穴,惠勒和背部
背景 在Burrows-Wheeler变换(BWT)是一个字符串的字符的可逆置换的结果在对某些类型的字符串如纯文本相似字符大运行。例如,它在bzip2压缩算法中使用。 BWT定义如下: 给定一个输入字符串,例如codegolf,计算它的所有可能的旋转并将它们按字典顺序排序: codegolf degolfco egolfcod fcodegol golfcode lfcodego odegolfc olfcodeg 字符串的BWT codegolf是由该字符串的每个字符的最后一个字符组成的字符串,即该块的最后一列。因为codegolf,这产生了fodleocg。 就其本身而言,这种转换是不可逆的,因为字符串codegolf和golfcode导致相同的字符串。但是,如果我们知道字符串以结束f,则只有一个可能的原像。 任务 实现一个渐进式程序或函数,该程序或函数从STDIN读取单个字符串,或者作为命令行或函数参数读取并打印或返回BWT或它的输入字符串的倒数。 如果输入字符串不包含空格,则您的提交应在输入后附加一个空格并计算BWT。 如果输入字符串已经包含一个空格,则它应该计算具有尾随空格的BWT的原像,并去除该空格。 例子 INPUT: ProgrammingPuzzles&CodeGolf OUTPUT: fs&e grodllnomzomaiCrGgPePzu INPUT: fs&e grodllnomzomaiCrGgPePzu OUTPUT: ProgrammingPuzzles&CodeGolf INPUT: bt4{2UK<({ZyJ>LqQQDL6!d,@:~L"#Da\6%EYp%y_{ed2GNmF"1<PkB3tFbyk@u0#^UZ<52-@bw@n%m5xge2w0HeoM#4zaT:OrI1I<|f#jy`V9tGZA5su*b7X:Xn%L|9MX@\2W_NwQ^)2Yc*1b7W<^iY2i2Kr[mB;,c>^}Z]>kT6_c(4}hIJAR~x^HW?l1+^5\VW'\)`h{6:TZ)^#lJyH|J2Jzn=V6cyp&eXo4]el1W`AQpHCCYpc;5Tu@$[P?)_a?-RV82[):[@94{*#!;m8k"LXT~5EYyD<z=n`Gfn/;%}did\fw+/AzVuz]7^N%vm1lJ)PK*-]H~I5ixZ1*Cn]k%dxiQ!UR48<U/fbT\P(!z5l<AefL=q"mx_%C:2=w3rrIL|nghm1i\;Ho7q+44D<74y/l/A)-R5zJx@(h8~KK1H6v/{N8nB)vPgI$\WI;%,DY<#fz>is"eB(/gvvP{7q*$M4@U,AhX=JmZ}L^%*uv=#L#S|4D#< OUTPUT: <#Q6(LFksq*MD"=L0<f^*@I^;_6nknNp;pWPBc@<A^[JZ?\B{qKc1u%wq1dU%;2)?*nl+U(yvuwZl"KIl*mm5:dJi{\)8YewB+RM|4o7#9t(<~;^IzAmRL\{TVH<bb]{oV4mNh@|VCT6X)@I/Bc\!#YKZDl18WDIvXnzL2Jcz]PaWux[,4X-wk/Z`J<,/enkm%HC*44yQ,#%5mt2t`1p^0;y]gr~W1hrl|yI=zl2PKU~2~#Df"}>%Io$9^{G_:\[)v<viQqwAU--A#ka:b5X@<2!^=R`\zV7H\217hML:eiD2ECETxUG}{m2:$r'@aiT5$dzZ-4n)LQ+x7#<>xW)6yWny)_zD1*f @F_Yp,6!ei}%g"&{A]H|e/G\#Pxn/(}Ag`2x^1d>5#8]yP>/?e51#hv%;[NJ"X@fz8C=|XHeYyQY=77LOrK3i5b39s@T*V6u)v%gf2=bNJi~m5d4YJZ%jbc!<f5Au4J44hP/(_SLH<LZ^%4TH8:R INPUT: <#Q6(LFksq*MD"=L0<f^*@I^;_6nknNp;pWPBc@<A^[JZ?\B{qKc1u%wq1dU%;2)?*nl+U(yvuwZl"KIl*mm5:dJi{\)8YewB+RM|4o7#9t(<~;^IzAmRL\{TVH<bb]{oV4mNh@|VCT6X)@I/Bc\!#YKZDl18WDIvXnzL2Jcz]PaWux[,4X-wk/Z`J<,/enkm%HC*44yQ,#%5mt2t`1p^0;y]gr~W1hrl|yI=zl2PKU~2~#Df"}>%Io$9^{G_:\[)v<viQqwAU--A#ka:b5X@<2!^=R`\zV7H\217hML:eiD2ECETxUG}{m2:$r'@aiT5$dzZ-4n)LQ+x7#<>xW)6yWny)_zD1*f @F_Yp,6!ei}%g"&{A]H|e/G\#Pxn/(}Ag`2x^1d>5#8]yP>/?e51#hv%;[NJ"X@fz8C=|XHeYyQY=77LOrK3i5b39s@T*V6u)v%gf2=bNJi~m5d4YJZ%jbc!<f5Au4J44hP/(_SLH<LZ^%4TH8:R OUTPUT: bt4{2UK<({ZyJ>LqQQDL6!d,@:~L"#Da\6%EYp%y_{ed2GNmF"1<PkB3tFbyk@u0#^UZ<52-@bw@n%m5xge2w0HeoM#4zaT:OrI1I<|f#jy`V9tGZA5su*b7X:Xn%L|9MX@\2W_NwQ^)2Yc*1b7W<^iY2i2Kr[mB;,c>^}Z]>kT6_c(4}hIJAR~x^HW?l1+^5\VW'\)`h{6:TZ)^#lJyH|J2Jzn=V6cyp&eXo4]el1W`AQpHCCYpc;5Tu@$[P?)_a?-RV82[):[@94{*#!;m8k"LXT~5EYyD<z=n`Gfn/;%}did\fw+/AzVuz]7^N%vm1lJ)PK*-]H~I5ixZ1*Cn]k%dxiQ!UR48<U/fbT\P(!z5l<AefL=q"mx_%C:2=w3rrIL|nghm1i\;Ho7q+44D<74y/l/A)-R5zJx@(h8~KK1H6v/{N8nB)vPgI$\WI;%,DY<#fz>is"eB(/gvvP{7q*$M4@U,AhX=JmZ}L^%*uv=#L#S|4D#< INPUT: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa OUTPUT: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa INPUT: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa OUTPUT: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa …

14
CodeGolf-忽略噪音#1
使用说明 Barry 并不是一个很好的后端开发人员,负责一个小型API,该API应该为您提供有关在客户商店中进行购买的信息。但是,他做得不好,您的老板告诉您在客户端进行修复。理想情况下,你应该接受逗号分隔值,如927,2,45,90对应于像item_id,item_amount,unit_price,total 在第一个难题中,我们只关心item_id,item_amount但是我们需要其他领域来介绍问题。巴里有时把事情混在一起,并返回噪声输出的一部分,他也得到了顺序不对,返回noise,noise,unit_price,total,item_id,item_amount。 你的任务 无论Barry是否正确返回它们,您都需要在地图(或类似结构)中存储对,item_id并item_amount在换行中以尽可能少的字符数打印每个元素。(存储不是强制性的,我们只关心输出) 样本输入(混合的正确格式和混乱格式) 103,2,50,100 106,1,900,900 459,40,150,300,67,2 4,20,30,6000 换句话说,输入将是&a,b,x,x或x,x,x,x,a,b我们在乎的地方。您需要提供代码,假设我们在csv的所有行中都有一个名为(或任何其他名称)的变量。abG 样品输出 103,2 106,1 67,2 //This one was messy 4,20 公差 答案有一定的容忍度。格式相似但遵循正确值的答案也将被接受。格式,如[a,b],(a,b)或者{a,b}是有效的,但是a,b是优选的。 尽管第一个难题的解决方法既简单又快速,但它的接受程度参差不齐,但我也觉得有些人也喜欢它。所以我现在要继续做高尔夫

2
病理分选
病理分选 您的老板要求您开发一种排序算法,以提高公司应用程序的性能。但是,编写该应用程序后,您知道您不可能使其速度大大提高。不想让您的老板失望,您决定开发一种新算法,该算法对某些数据集的效果甚至比* sort好。当然,您不能使该算法仅在某些情况下起作用是显而易见的,因此您希望使其模糊。 竞赛的目的是用您选择的语言编写一个排序例程,该例程在某些数据集上的表现要优于其他数据集,并具有可重复的结果。确定速度的分类越具体越好。该算法必须进行某种排序,因此依赖于已完全排序的数据的算法(例如,什么都不做的算法)或依赖于已完全反向排序的数据的算法都是无效的。排序算法必须正确地对任何数据集进行排序。 介绍完例程后,请说明为什么它仅适用于某些数据集,并包括对至少一组良好(快速)数据和一组不良(缓慢)数据的测试。这里的目的是要向老板证明,您偶然发现了一种更好的排序方式,因此,更多的测试数据会更好。当然,您只会向老板展示来自良好数据的测试结果,因此所需测试数据中的缺陷不会太明显。如果适用于您的语言,请说明您的算法比语言的内置排序算法更快。 例如,可能会提交一种插入排序算法,其中好数据是已经接近排序的数据,坏数据是完全随机的数据,因为插入排序对接近排序的数据接近O(n)。但是,这不是很好,因为我的老板可能会注意到所有测试数据几乎都是从头开始排序的。 这是一场人气竞赛,因此7天(5月21日)后获得最高票数的答案将获胜。 如果没有人能击败我,我想提交一个利用统一分布的数据集的社区Wiki答案。

6
将半排序插入未排序的数组
欢迎来到PPCG Inc.的第一天。作为我们最新的初级助理文件分类机,您有责任确保我们发送给您的所有文件都按字母顺序存档。猴子很容易做到。好吧,隐喻地说,就像我们确实雇用了一只猴子来做那样。你猜怎么了?原来猴子对我们的字母缺乏理解。无论如何,现在没有时间修复现在的混乱局面,所以请尽量不要使情况变得更糟,好吗?然后去吧!如果饿了,水冷却器旁会放着香蕉。祝好运! 职位描述 输入值 您将收到一个字符串列表(档案)和一个需要添加到该列表的字符串(文档) 所有字符串将仅包含大写字母,小写字母和空格 字符串始终以字母开头和结尾 任务 确定文档的目标位置:应在存档中接收的位置。目标位置可以如下确定: 对于每个职位: 计算该位置之前存档中字符串的数量(按字母顺序排列) 计算该位置之后档案中按字母顺序排列的字符串数量 将职位的分数定义为以上两个计数之和 文档的目标位置是得分最高的位置 在平局的情况下,所有得分最高的职位均有效地充当目标职位。只需要选择一个。 排序时: 大写和小写字母是等效的 字母前有空格 输出量 以任何形式添加了文档的存档 要么 基于0或1的索引中文档的目标位置 工作评估 最小字节获胜! 示例I / O Archive: Applebuck Season Friendship is Magic The Ticket Master Griffon the BrushOff Boast Busters Bridle Gossip Document: Dragonshy Position scores (0-based index): 0: …

3
取消合并清单
介绍 你们中的大多数人都熟悉用于对数字列表进行排序的合并排序算法。作为该算法的一部分,我们编写了一个名为的辅助函数merge,该函数将两个排序列表组合为一个排序列表。在类似Python的伪代码中,该函数通常如下所示: function merge(A, B): C = [] while A is not empty or B is not empty: if A is empty: C.append(B.pop()) else if B is empty or A[0] ≤ B[0]: C.append(A.pop()) else: C.append(B.pop()) return C 这个想法是继续弹出和中的前几个元素中较小的一个A,B直到两个列表都为空,然后将结果收集到中C。如果A和B都被排序,则也是如此C。 相反,if C是一个排序列表,我们将其分为任意两个子序列A和B,然后A和B也进行排序和merge(A, B) == C。有趣的是,如果C未排序,则不一定成立,这使我们面临挑战。 输入值 您的输入是其中一些的第一个2*n非负整数的排列,以列表形式给出。[0, 1, 2, ..., 2*n-1]n > …

24
合并两个排序列表
合并排序 在此挑战中,您将实现合并排序的合并子例程。具体来说,您必须创建一个函数或程序或动词或类似词,该函数或函数或类似物包含两个列表,每个列表以升序排列,然后将它们组合成一个列表,以升序排列。要求: -您的算法必须在输入大小上采用渐近线性的时间量。请停止提供O(n ^ 2)个解决方案。 您不得使用任何能够对列表进行排序或合并列表的内置函数。作者的自由裁量权。 该代码应能够处理重复的元素。 不用担心空列表。 例子: merge([1],[0,2,3,4]) [0,1,2,3,4] merge([1,5,10,17,19],[2,5,9,11,13,20]) [1, 2, 5, 5, 9, 10, 11, 13, 17, 19, 20] 这是代码高尔夫球,所以可能最短的代码获胜!

15
手动逻辑门
编写一个模拟基本逻辑门的程序。 输入:一个全大写单词,后跟2个1位二进制数字,以空格分隔,例如OR 1 0。门OR,AND,NOR,NAND,XOR,和XNOR需要。 输出:输入的逻辑门的输出将被赋予两个数字:1或0。 例子: AND 1 0成为0 XOR 0 1变得1 OR 1 1成为1 NAND 1 1成为0 这是codegolf,所以最短的代码获胜。
13 code-golf  logic-gates  hashing  code-golf  code-golf  number  array-manipulation  integer  code-golf  string  unicode  text-processing  cops-and-robbers  boggle  cops-and-robbers  boggle  code-golf  ascii-art  code-golf  word-puzzle  king-of-the-hill  python  code-golf  sequence  kolmogorov-complexity  code-golf  source-layout  code-golf  string  kolmogorov-complexity  math  number  code-golf  date  code-golf  combinatorics  recursion  game  king-of-the-hill  javascript  code-golf  array-manipulation  code-golf  radiation-hardening  self-referential  code-golf  integer  code-golf  number  code-golf  set-theory  code-golf  sequence  code-golf  string  sorting  natural-language  code-golf  decision-problem  number-theory  primes  code-golf  code-golf  ascii-art  code-challenge  array-manipulation  sorting  rubiks-cube  regular-expression  code-golf  counting  file-system  recursion  code-golf  string  kolmogorov-complexity  color  code-golf  game  code-challenge  permutations  encode  restricted-time  decode  code-golf  math  decision-problem  matrix  integer  palindrome  code-golf  matrix  statistics  king-of-the-hill  king-of-the-hill  python  card-games  code-golf  string  natural-language  code-golf  sequence  number-theory 

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.