Questions tagged «sorting»

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

10
让我们练习421的得分规则!
421是在法国和其他一些欧洲国家受欢迎的骰子游戏。它主要在酒吧和酒馆中播放,以确定谁将购买下一轮饮料。完整游戏通常分两轮进行,每个玩家都试图摆脱令牌,但这与此处无关。(法语的维基百科页面。) 游戏中有3个标准方块骰子。 任务 您的任务是通过应用此游戏的评分规则,对从最高到最低的3个骰子骰子[X,Y,Z]的非空列表进行排序。 基本计分 4,2,1是可能的最高组合。根据规则,它可能会得到8、10或11分。因为我们是对卷进行排序而不是对点进行计数,所以确切的值无关紧要。 三张A:1,1,1是第二高的组合,得分7分。 两张A:X,1,1(其中X是2到6)得到X分。 三种类型:X,X,X(其中X为2到6)得到X分。 直道:X,X + 1,X + 2分的分数2分。 所有其他卷得分为1分。 结算关系 每当两卷获得相同的分数时,以下规则适用: 两王牌比三王牌更好。例如:5,1,1击败5,5,5。 三分之二的2,2,2比直的要好。例如:2,2,2击败4,5,6。 直线从最低到最高排序。例如:4,5,6击败2,3,4。 通过将骰子从最高到最低排序来解决所有其他掷骰。例如:6,5,2击败6,4,3。(因此,游戏中最低的组合是2,2,1。) 以下是从最高到最低顺序排列的56个不同的卷: 421 111 611 666 511 555 411 444 311 333 211 222 654 543 432 321 665 664 663 662 661 655 653 652 651 644 643 642 …

30
从原动力中恢复原动力
定义:素数幂是自然数,可以以p n的形式表示,其中p是素数,n是自然数。 任务:给定素数p n > 1,返回素数p。 测试用例: input output 9 3 16 2 343 7 2687 2687 59049 3 计分:这是代码高尔夫球。以字节为单位的最短答案将获胜。
13 code-golf  arithmetic  primes  king-of-the-hill  python  board-game  code-golf  number  subsequence  code-golf  ascii-art  code-golf  array-manipulation  decision-problem  grid  fastest-algorithm  logic-gates  logic  code-golf  cards  code-golf  rational-numbers  code-golf  math  number  sequence  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  code-golf  number  sequence  decision-problem  code-golf  ascii-art  number  code-challenge  sequence  arithmetic  sorting  code-golf  date  fastest-algorithm  code-golf  string  number  random  combinatorics  code-golf  combinatorics  code-golf  ascii-art  base-conversion  code-golf  array-manipulation  code-golf  string  code-golf  string  number  arithmetic  code-golf  kolmogorov-complexity  code-golf  string  array-manipulation  json  code-golf  puzzle-solver  code-golf  binary  graph-theory  code-golf  arithmetic  haskell  code-golf  string  cipher  code-golf  code-golf  string  parsing  alphabet  code-golf  string  code-golf  ascii-art  code-golf  string  number  code-golf  string  balanced-string 

1
你能超越比尔·盖茨吗?
煎饼分类是一个数学问题的通俗术语,即当可以将抹刀插入堆叠中的任意点并用来翻转其上方的所有煎饼时,按大小顺序对无序的煎饼堆叠进行分类的数学问题。煎饼数P(n)是n个煎饼所需的最小翻转次数。1个 1979年,年轻的比尔·盖茨(Bill Gates)和克里斯托斯(Christos Papadimitriou)撰写了一篇论文,证明P(n)=(5n + 5)/ 3的上限。2 我认为可以肯定的是,盖茨(和/或帕帕第米特里奥)编写了一个程序,使用他们开发的算法(可能晚于1979年)执行煎饼分类。由于盖茨是一位熟练的程序员,因此他们可能会尽可能地尝试编写此代码,但是源代码的大小尚未公开(AFAIK)。 挑战: 创建一个执行煎饼分类的函数/程序,最大翻转次数不超过盖茨和帕帕第米特里乌找到的界限。3您可以选择是要列表递增还是递减,只要它是一致的即可。 您可以假设n <50。因此,您必须将翻转次数限制为(一些随机选择的n值): n P(n) 38 65 49 83 50 85 输出应该是每次翻转之前刮刀的位置。输出可能是零索引或一个索引,您可以选择从顶部还是底部进行计数。 附加规则: 运行时必须是确定性的 没有固定的时间限制,但是您必须能够提供包含50个元素的列表的输出 测试清单: 我无法提供最困难的列表(如果是的话,我会写一篇论文,而不是挑战),所以我将提供一些随机数字列表,您可以在这些数字上测试函数/程序。如果事实证明这些列表“容易”,我可能会添加其他人。 9, 63, 62, 75, 45, 78, 59, 75, 69, 3, 28, 94, 51, 10, 45, 93, 97, 80, 72, 36, 80, 88, 30, 93, …

11
解释松散范围
解释松散范围 ListSharp是一种解释型编程语言,具有许多功能,其中一个功能是基于1索引的范围创建器,其工作方式如下: 您可以将范围定义为(INT) TO (INT)或仅定义(INT)两个int可以从min到max int32值的范围 然后,您可以使用这些范围来提取数组的元素,而不必担心会超出其边界 因此: 1 TO 5 产生: {1,2,3,4,5} 3 产生: {3} 范围可以使用AND运算符相加 1 TO 5 AND 3 TO 6 产生: {1,2,3,4,5,3,4,5,6} 记住这也适用于负数 3 TO -3 产生: {3,2,1,0,-1,-2,-3} 挑战如下: 输入值 字符数组和先前定义的range子句作为字符串 输出量 范围中基于1索引位置的元素(不存在/负索引会转换为空字符) 如何取胜 作为代码高尔夫球挑战,您应该创建具有最少字节数的程序以获胜 有人指出不存在空字符,因此您应该忽略它们(我仅在此处显示它们是为了使它们更易于理解,但却使人感到困惑) 测试用例: input array is: {'H','e','l','l','o',' ','W','o','r','l','d'} range clause: "1 TO …
13 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 

8
收集和放置物品
这项挑战的目标是收集列表中的选定项目并将其移动到列表中的特定位置。 作为一个直观示例,请使用输入值(用黑框整数表示)和相应的真值列表,其中true表示已选择项目(用蓝色框表示,其中T真是F虚假): 逻辑上的第一步是将标记为“真”和“不真”的项目分成相应的列表。请注意,必须保持每个列表中的相对顺序(即,所选项目的顺序必须为1,4,5,而未选中项目的顺序必须为2,3,6,7)! 第二个逻辑步骤是在未选择项的其余列表中指定一个索引,在给定索引处将所有选择的项插入到该项之前。假设索引从0开始,假设您要在索引3处插入选择。这对应于7框前的位置,因此所选项目应插入之前7。 最终的解决方案是2,3,6,1,4,5,7。 注意,此逻辑图描述了可以完成此操作的一种方法。只要输出始终产生相同的可观察结果,您的程序就无需采取相同的逻辑步骤。 输入值 您的程序有3个输入: 代表项目的整数列表。这可能是一个空列表。此列表将始终由唯一的正整数组成,而不必按排序顺序排列(即,列表中5不会出现两次)。 真/假值列表,其长度与项目列表的长度相同,其中真值表示已选择具有相同索引的项目。 一个整数,表示要插入选择的位置。您可以选择列表中第一项的索引,只要它在程序的每次运行中都保持不变即可(例如,第一项可以是索引0或索引1)。请指定您的程序遵守的约定。该索引应在范围内[starting_idx, ending_idx+1],即它将始终是有效索引。如果案例索引为ending_idx+1,则选择内容应插入列表的末尾。您可能会认为此整数适合您语言的本机整数类型。 输入可以来自任何所需的来源(stdio,功能参数等) 输出量 输出是代表项目最终顺序的列表。这可以是任何所需的源(stdio,返回值,函数输出参数等)。允许您就地修改任何输入(例如,给定一个可修改列表作为函数参数,并让您的函数在该列表上就地操作)。 测试用例 以下所有测试用例均假定基于0的索引。我使用0和1分别表示选择蒙版的虚假/真实值。 测试用例碰巧具有格式为的列表[a,b,c],但是只要您的输入列表表示一个有限的有序序列就可以了。 输入: [] [] 0 输出: [] 输入: [1,2,3,4,5,6,7] [1,0,0,1,1,0,0] 3 输出: [2,3,6,1,4,5,7] 输入: [1,2,3,4,5,6,7] [1,0,0,1,1,0,0] 0 输出: [1,4,5,2,3,6,7] 输入: [1,2,3,4,5,6,7] [1,0,0,1,1,0,0] 4 输出: [2,3,6,7,1,4,5] 输入: [1,2,3,4,5,6,7] [1,1,1,1,1,1,1] 0 输出: [1,2,3,4,5,6,7] 输入: [1,2,3,4,5,6,7] …

4
获取吸气剂
任务 我想每个人都喜欢自动代码生成并节省工作时间。您白天必须创建许多类和成员,而又不想getters手动创建所有这些类和成员。 任务是编写一个程序或函数,该程序或函数getters将为您自动为所有类成员生成。 输入 在我们的语言中,对象非常简单。类和成员的名称必须以字符开头,[a-zA-Z]并且只能包含字符[a-zA-Z0-9]。这是一个例子: class Stack { public overflow; protected trace; private errorReport; } 输出 这是基于给定示例的有效输出: class Stack { public overflow; protected trace; private errorReport; public function getOverflow() { return this->overflow; } public function getTrace() { return this->trace; } public function getErrorReport() { return this->errorReport; } } 吸气剂 getter方法的要求是: …
13 code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

30
将数字列表排序为奇数和偶数类别的最短程序
在《新近时代》中,查理·卓别林(Charlie Chaplin)遇到一台计算机时,他被雇用在分拣场中,作为检验员来确定工人是否正确地对物品进行分拣。有问题的物品是大理石包。大理石数为奇数的小包被堆叠在红色篮子中,大理石数为偶数的小包被堆叠在蓝色篮子中。 查理·卓别林(Charlie Chaplin)应该打孔程序,该程序将验证排序过程中是否存在任何异常。马克·斯温(Mack Swain)的直属上司分享了一种他需要编码的算法。 算法 L = List of Marble packets that's already sorted L_ODD = List of packets with Odd Number of Marbles L_EVEN = List of packets with Even Number of Marbles Check_Digit = √(ΣL_ODD² + ΣL_EVEN²) 他的工作是确定Check_Digit,并将其与Boss计算的值相匹配。 查理·卓别林(Charlie Chaplin)在午餐时间可以偷偷溜到马克·斯温(Mack Swain)的抽屉里,确定他的抽屉在前46 32列上有一张带有打孔器的卡片(这意味着马克只能编写一个只有46 32个字符的程序)。 查理·卓别林(Charlie Chaplin)现在需要所有代码忍者的帮助,才能编写出尽可能少的行。如果有人能提出比他的老板短的程序,他还将宣布50分的奖励。 摘要 给定一个正数(奇数和偶数)的列表/数组/向量,您需要编写一个函数,该函数将接受array(int …

3
Brainfuck中的按位运算符
您的任务是为以下每个二进制运算符创建一个Brainfuck程序。每个程序应从输入中获取一个或两个8位数字(A和B)并计算指定的运算: A XOR B A AND B A OR B A Shifted Left by 1 (circular shift) NOT A 您不必全部实施5。得分的计算方式为: #totalCharacters + {4000 * #problemsNotCompleted} 因此,有效分数是从零(最佳)到20,000(未完成)。 我不在乎您将结果存储在哪里,也不管您是否保留输入。假设8位单元以及仅在右侧需要的空单元数。 您可能会认为数字已经在最适合您的任何内存位置中,因此您无需担心IO操作。
13 code-golf  binary  brainfuck  code-golf  code-golf  ascii-art  random  code-golf  code-golf  code-challenge  sorting  code-golf  code-challenge  java  code-golf  statistics  code-golf  code-challenge  fastest-code  code-golf  math  code-golf  math  kolmogorov-complexity  code-golf  code-golf  array-manipulation  combinatorics  code-golf  kolmogorov-complexity  popularity-contest  underhanded  code-golf  math  floating-point  code-golf  interpreter  code-golf  music  code-golf  code-golf  cryptography  code-challenge  scrabble  code-golf  code-challenge  popularity-contest  quine  code-golf  quine  cryptography  code-golf  kolmogorov-complexity  code-golf  printable-ascii  code-golf  chess  code-golf  math  number-theory  code-challenge  c  code-golf  random  popularity-contest  hello-world  code-shuffleboard  code-golf  compression  grammars  code-golf  tips  code-golf  sequence  code-golf  string  code-challenge  sorting  permutations  code-golf  string  code-challenge  optimization  code-golf  interpreter  code-challenge  string  code-golf  math  number  fibonacci  string  compression  c#  code-golf  chemistry  popularity-contest  math  c  c++  java  code-golf  math  function  code-golf  complex-numbers  code-golf  geometry 

3
矩阵旋转排序
让我们定义一个具有唯一数字的非空,未排序和有限矩阵,如下所示: ñ= { 41个5376}N={457136}N = \begin{Bmatrix} 4&5&7\\1&3&6 \end{Bmatrix} 让我们定义4个矩阵移动为: ↑*(向上):向上移动一列 ↓*(向下):向下移动一列 →*(右):向右移动一行 ←*(左):向左移动一行 星号(*)表示受移动影响的列/行(可以是0索引或1索引。由您决定。请在您的答案中说明哪一个)。 面临的挑战是,使用上述动作以升序对矩阵进行排序(左上角最低,右下角最高)。 例 输入: 可能的输出:或。(请注意,所有这些举动都可以对矩阵进行排序,因此两个答案都是正确的)ñ= { 41个2536}N={423156}N=\begin{Bmatrix}4&2&3\\1&5&6 \end{Bmatrix}↑0↓0 输入: 可能的输出:ñ= { 24351个6}N={231456}N=\begin{Bmatrix}2&3&1\\4&5&6 \end{Bmatrix}→0 输入(测试用例示例): 可能的输出:ñ= { 41个5376}N={457136}N = \begin{Bmatrix} 4&5&7\\1&3&6 \end{Bmatrix}↑0↑1←1↑2 输入: 可能的输出: ñ= ⎧⎩⎨⎪⎪581个927643⎫⎭⎬⎪⎪N={596824173}N = \begin{Bmatrix} 5&9&6\\ 8&2&4\\ 1&7&3 \end{Bmatrix}↑0↑2→0→2↑0→2↑1↑2←1 输入: 可能的输出: ñ= ⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪1个1017152630272711162228381221232941318岁1924659142025⎫⎭⎬⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪N={127282961023451778139151112181426162119203022232425}N = \begin{Bmatrix} …

14
用零填充文件
今天的任务是获取一个现有文件,并将零添加到该文件,直到达到一定大小为止。 您必须编写一个程序或函数,该程序或函数采用当前目录中文件的名称f和字节数b。在保留的原始内容的同时f,您必须在末尾写入零(空字节,而不是ascii 0),以便其新大小为b字节。 您可以假设名称中f仅包含字母数字的ascii,您对此具有完全权限,其初始大小不大于b,但可能与一样大b,并且有无限的可用磁盘空间。 您可能不会假设f它是非空的,或者它不已经包含空字节。 执行结束后,不应修改其他现有文件,也不应该存在新文件。 测试用例 f的内容| b | f的结果内容 12345 | 10 | 1234500000 0 | 3 | 000 [空] | 2 | 00 [空] | 0 | [空] 123 | 3 | 123
12 code-golf  file-system  code-golf  code-golf  string  code-golf  string  code-golf  random  game  compression  code-golf  array-manipulation  sorting  code-golf  number  arithmetic  primes  code-golf  geometry  code-golf  code-golf  decision-problem  regular-expression  code-golf  string  math  code-challenge  restricted-source  integer  palindrome  code-golf  string  palindrome  code-challenge  busy-beaver  code-golf  ascii-art  code-golf  string  code-golf  string  permutations  code-golf  code-golf  string  permutations  code-golf  number  primes  function  set-theory  code-challenge  hello-world  code-golf  math  number  decision-problem  code-golf  code-golf  sequence  arithmetic  integer  code-golf  math  number  arithmetic  decision-problem  code-golf  kolmogorov-complexity  alphabet  code-golf  combinatorics  graph-theory  tree-traversal  code-golf  set-theory  code-golf  interpreter  brainfuck  substitution  code-golf  quine  permutations 

10
从前到后的排列索引
挑战 给定项目数n,在非空的已排序列表中,输出索引, 如果按字典顺序对排列进行排列,则i(n)其 “ 从前到后排列 ” 将位于所有排列的列表中。 结果可能是基于0或1的,只说哪个(即i不是n)。 从后到前的排列 ...是通过重复获取向前排序的列表(从左至右)的后(右)然后前(左),直到所有项都移至新列表,来构建项列表的结果,就像这样: Input being consumed Output being built ----------------------+---------------------- [1,2,3,4,5,6,7] | [] [1,2,3,4,5,6] | [7] [2,3,4,5,6] | [7,1] [2,3,4,5] | [7,1,6] [3,4,5] | [7,1,6,2] [3,4] | [7,1,6,2,5] [4] | [7,1,6,2,5,3] [] | [7,1,6,2,5,3,4] ----------------------+---------------------- Result: [7,1,6,2,5,3,4] 排列指数 如果n为7(如上面的从前到后的示例)7! = 5040,则(不同的)项目可能存在排列。 所有这些排列的按字典顺序排序的列表中的第一个(如果愿意,则为零)项目[1,2,3,4,5,6,7]本身就是它自己。 第二项是[1,2,3,4,5,7,6]。 …

3
音位错误
性格 我们将这些Unicode字符称为英语IPA辅音: bdfhjklmnprstvwzðŋɡʃʒθ 我们将这些Unicode字符称为 英语IPA元音: aeiouæɑɔəɛɜɪʊʌː (是的,ː这只是长元音标记,但出于此挑战的目的,请将其视为元音。) 最后,这些是主要和次要压力标记: ˈˌ 注意,ɡ(U + 0261)不是小写的g,主应力标记ˈ(U + 02C8)不是撇号,并且ː(U + 02D0)不是冒号。 你的任务 给出一个单词,将元音堆叠在跟随的辅音之上,并将重音标记放置在其跟随的辅音下方。(正如问题标题所暗示的,这样的书写系统将辅音元音序列作为一个单元打包在一起,称为abugida。)给定输入ˈbætəlʃɪp,产生输出: æə ɪ btlʃp ˈ 甲字被保证是声母,韵母和应力标记的字符串,如上面所定义。永远不会有连续的重音标记,它们将始终放置在单词的开头和/或辅音之前。 测试用例 可能有连续的元音。例如,kənˌɡrætjʊˈleɪʃən变为 ɪ ə æ ʊeə knɡrtjlʃn ˌ ˈ 如果一个词以元音开头,打印在“基线”与辅音:əˈpiːl变 ː i əpl ˈ 一个测试用例的初始,强调元音:ˈælbəˌtrɔs变 ə ɔ ælbtrs ˈ ˌ 一句话:ˌsuːpərˌkaləˌfrædʒəˌlɪstɪˌkɛkspiːæləˈdoʊʃəs变成 æ ː ː ʊ uə aə …

2
解释基普尔!
介绍 Kipple是Rune Berg于2003年3月发明的基于堆栈的深奥编程语言。 Kipple有27个堆栈,4个运算符和一个控制结构。 堆栈 堆栈被命名为a- z并包含32位带符号整数。还有一个特殊的堆栈,@使输出数字更加方便。当将数字压入时@,实际上将压入该数字的ASCII值。(例如,如果您将12推到@,它将推49,然后推50。@) i在执行程序之前,将输入压入输入堆栈。解释器将i在执行之前要求存储值。执行完成后,输出堆栈上的所有内容o都会弹出以ASCII字符形式输出。由于这是Kipple唯一的IO机制,因此无法与Kipple程序进行交互。 经营者 操作数可以是堆栈标识符或带符号的32位整数。 推送:>或< 语法:Operand>StackIndentifier或StackIndentifier<Operand Push运算符将操作数向左移并将其推入指定的堆栈。例如,12>a将值12推入stack a。a>b将从堆栈中弹出最高值a并将其推入堆栈b。弹出空堆栈总是返回0 a<b相当于b>a。a<b>c从弹出最高值,b并同时推入c和a。 加: + 句法: StackIndentifier+Operand Add运算符将堆栈上最顶层项目和操作数之和压入堆栈。如果操作数是堆栈,则从中弹出值。例如,如果堆栈的最高值为a1,a+2则将3压入堆栈。如果a为空,a+2则将2推入。如果堆叠的最值a和b是1和2,然后a+b将从栈中弹出的值2 b和3推入堆栈a。 减去: - 句法: StackIndentifier-Operand 减法运算符的工作方式与加法运算符完全相同,只是它减去而不是加法。 明确: ? 句法: StackIndentifier? 如果最上面的项目为0,则Clear运算符将清空堆栈。 解释器将忽略操作符旁边不存在的所有内容,因此以下程序将起作用:a+2 this will be ignored c<i。但是,添加注释的正确方法是使用#字符。#执行前,a 和行尾字符之间的所有内容都将被删除。ASCII字符#10在Kipple中定义为行尾。 操作数可以由两个运算符共享,例如a>b c>b c?可以写为a>b<c?。 该程序1>a<2 a+a将导致a包含值[1 4](从下到上),而不是[1 3]。对于-操作员也是如此。 控制结构 Kipple中只有一种控制结构:循环。 句法: (StackIndentifier code …
12 code-golf  interpreter  code-golf  string  code-golf  math  string  code-golf  ascii-art  path-finding  code-golf  string  ascii-art  code-golf  interpreter  binary  logic-gates  logic  code-golf  ascii-art  code-golf  graph-theory  code-golf  string  code-golf  number  sorting  code-golf  number-theory  random  cryptography  polynomials  code-golf  number  code-golf  math  number  sequence  code-golf  quine  code-generation  code-golf  arithmetic  set-theory  code-golf  sequence  code-golf  code-golf  string  math  fastest-code  optimization  code-golf  code-golf  internet  stack-exchange-api  code-golf  array-manipulation  code-golf  string  internet  string  code-challenge  internet  test-battery  code-golf  math  pi  code-golf  arithmetic  primes  code-golf  array-manipulation  code-golf  string  code-golf  string  palindrome  code-golf  sequence  number-theory  fastest-algorithm  code-golf  math  number  base-conversion  code-golf  number-theory  sorting  subsequence  search  code-golf  permutations  code-challenge  popularity-contest  code-generation 

7
根据依赖性对项目进行排序
目标 对项目列表进行排序,确保每个项目都在指定的依赖项之后列出。 输入值 整数数组的数组,其中每个整数指定该项目必须紧随其后的另一个项目的从0开始或从1开始的索引。输入可以是数组或字符串或任何其他人类可读的内容。 例如,基于0的输入: [ [ 2 ], // item 0 comes after item 2 [ 0, 3 ], // item 1 comes after item 0 and 3 [ ], // item 2 comes anywhere [ 2 ] // item 3 comes after item 2 ] 假设没有循环依赖关系,则始终至少有一个有效顺序。 输出量 依依依顺序排列的数字。模棱两可的顺序不必是确定性的。输出可以是数组或文本或其他任何人类可读的内容。 …

8
排版多维标签
在一个蒸汽朋克的多维世界中,我们的老板想在集团的多维文件柜中的每个抽屉上粘贴打印的索引标签。 老板希望使用仅为此目的而购买的字体将整个标签纸排版为单个表格,因此我们必须订购分类(金属符号片)。由于排序非常昂贵,因此我们的订购必须针对每个数字符号的准确计数。 对于给定的(以任何方式)长度≥0的一组长度,返回(以任何方式)我们的命令,这是排版所有笛卡尔坐标所需的数字频率表。它必须按键盘的出现顺序排列(即9之后为0),并且可能不包含0种排序的顺序,因此,如果根本不排序(因为尺寸的长度为0),则不能排序。什么都不打印。 如果您的代码也可以处理(即不打印任何内容)0个维度,则-3分的奖励。 最终换行符是可以接受的。 禁止使用标准漏洞。 如前所述,排序很昂贵,因此是codecolf。 善良的灵魂可能会编辑此挑战,以包括自动评分,因此请添加标题,例如:# LanguageName, 123 sorts 测试用例 给定11,打印: 1 4 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 0 1 因为所需要的标签1,2,3,4,5,6,7,8,9,10,和11。 给定2 3,打印: 1 5 2 5 3 2 因为所需要的标签1 1, 1 2, 1 3, 2 1, …

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.