Questions tagged «array-manipulation»

通过使用和操纵数组来解决特定问题的竞赛。

3
识别细胞自动机的序列
背景 出于这一挑战的目的,n-state元胞自动机只是一个二进制函数f,该函数从状态集中获取两个数字{0, 1, ..., n-1}作为输入,然后从该集合返回另一个数字作为输出。可以将其应用于长度至少为2 的数字列表L = [x0, x1, x2, ..., xk-1] f(L) = [f(x0, x1), f(x1, x2), f(x2, x3), ..., f(xk-2, xk-1)] 请注意,结果列表比原始列表少一个元素。甲时空图的f从开始L是通过重复应用获得列表的列表f来L,并收集在一个列表中的结果。最终列表具有长度为1,我们就说该列表L是识别序列为f,如果在所述状态集合中每两个元素的列表是从开始时空图的一些行的连续子列表L。这相当于没有其他n状态的CA具有确切的时空图的条件。 输入值 您的输入是一个n-by- n整数矩阵M,整数列表L至少2的长度,和任选的数目n。矩阵通过(使用基于0的索引)M定义n-stateCA 。确保和并且仅包含状态集的元素。ff(a,b) = M[a][b]n > 0ML{0, 1, ..., n-1} 输出量 如果L是CA的识别序列,则您的输出应为f一致的真实值,否则为一致的虚假值。这意味着所有“是”实例产生相同的真实值,而所有“否”实例产生相同的虚假值。 例 考虑输入n = 2,M = [[0,1],[1,0]]以及L = [1,0,1,1]。矩阵M定义了二进制XOR自动机f(a,b) = a+b mod 2,并且时空图从Lis 开始 …

23
使用O(n)算法旋转整数数组
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加细节并通过编辑此帖子来澄清问题。 2年前关闭。 编写一个将整数数组旋转给定数k的函数。从结尾开始的k个元素应移到数组的开头,所有其他元素应向右移以留出空间。 旋转应就地完成。 算法的运行时间不能超过O(n),其中n是数组的大小。 此外,必须使用恒定内存来执行该操作。 例如, 如果数组使用元素arr = {1、2、3、4、5、6、7、8、9}初始化 rotation(arr,3)将导致元素为{7,8,9,1,2,2,3,4,5,6} rotation(arr,6)将得到{4,5,6,7,8,9,1,1,2,3}

13
列表操作
受到这个问题的启发。 给定一个包含数字的列表,打印: 列表中数字的总和与乘积 平均值和中位数 列表中每个词之间的差异(例如[1,2,3] -> [1,1]: 1+1=2, 2+1=3) 列表,升序排列 列表的最小值和最大值 列表的标准偏差 以供参考: 标准偏差 其中μ是平均平均值,x i是i列表中的第th项,是列表N的长度。 最短的代码获胜。祝好运!

7
高尔夫代码:弗雷序列(I)
挑战 在此任务中,您将得到一个整数N(小于10 ^ 5),输出N阶的Farey序列。 输入N在单行中给出,输入由EOF终止。 输入项 4 3 1 2 输出量 F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} 约束条件 输入数量不会超过10 ^ 6个值 您可以使用任何选择的语言 最短的解决方案获胜!
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

1
二进位转置
与大多数APL符号一样,⍉当用一个参数(移调)和两个参数(二进位转置/重排维)调用时,含义不同。这个挑战与后者有关,后者的行为类似于numpy.moveaxisPython或permuteMATLAB,但功能更强大。 order ⍉ A什么时候order有不同的条目 当的所有成员order都不同时,order ⍉ A等效于: numpy.moveaxis(A, tuple(range(len(A.shape)), order) 在Python中,或 permute(A,order)在MATLAB中。引用后者的文档: B = permute(A,order)重新排列A的尺寸,以便它们按矢量顺序指定的顺序。所得数组B具有与A相同的值,但访问任何特定元素所需的下标顺序均按顺序指定进行重新排列。 例如,假设A是一个3D数组,然后让B ← (2 0 1)⍉A。那么B B[x0,x1,x2] = A[x2,x0,x1]对所有人来说x2,x0,x1 order ⍉ A什么时候order重复输入 当order有重复的条目时,我们取数组的对角切片。例如,让A为2x3x4数组。B ← (0 0 1)⍉A沿着对角线切片A来制作B这样的图像B[x0,x1] = A[x0,x0,x1]。请注意,这B是一个2x4数组:如果它是3x4,则需要设置B[2, x1] = A[2, 2, x1]超出的范围A。一般情况下k的第N维B将所有的最小A.shape[i]这样order[i] = k。 例 考虑order⍉A其中order = [2, 1, 0]A为3x4x5 的二进位转置 A = [[[ …

6
Codegolf Rainbow:使用反射对颜色进行排序
介绍: 在我发布了两个与Rainbow 相关的挑战:Codegolf Rainbow:使用整数数组1和Codegolf Rainbow:以黑白绘制 2之后,@ ChrisM在ASCII中做出了以下评论(Draw in Black-and-White)挑战: 也许您知道这一点,这是设计使然的(我知道彩虹也不是菱形或ascii,并且更高阶的位置会变得更加复杂),但是第二个彩虹中的颜色不是颠倒了吗? 他的确是正确的。当您看到两条彩虹时,第二条实际上是第一条的反射,因此颜色是相反的。有三个彩虹,这是实际的双彩虹,第三个彩虹是其他两个彩虹之一的反映。并且有四个,有两个彩虹,以及两个彩虹。 因此,让我们利用这个事实提出第三个相关挑战。 挑战: 输入:一个正整数n,为>=2,以及一个size的整数列表>= n+1。 输出:相同的列表顺序如下: 首先将输入列表分为大小子列表n(尾随子列表可以是范围内的任何大小[1,n])。 然后,根据子列表的数量执行以下操作m: 将m - m//2子列表的第一数量从最低到最高(其中//是整数除法)进行排序。(即具有6个子列表,前三个将按从低到高的顺序排序;具有5个子列表时,前三个按从低到高的顺序排序。) 将m//2子列表的最后数量从最高到最低排序(其中//是整数除法)。(即具有6个子列表,后三个将按从高到低的顺序排序;具有5个子列表,后两个将按从高到低的顺序排序。) 将所有子列表合并在一起,再次形成一个列表 例子: 输入:n=7和[3,2,1,-4,5,6,17,2,0,3,5,4,66,-7,7,6,-5,2,10] 步骤1:[[3,2,1,-4,5,6,17],[2,0,3,5,4,66,-7],[7,6,-5,2,10]] 步骤2:[[-4,1,2,3,5,6,17],[-7,0,2,3,4,5,66],[10,7,6,2,-5]] 步骤3 /输出:[-4,1,2,3,5,6,17,-7,0,2,3,4,5,66,10,7,6,2,-5] 输入:n=4和[7,4,-8,9,3,19,0,-23,-13,13] 步骤1:[[7,4,-8,9],[3,19,0,-23],[-13,13]] 步骤2:[[-8,4,7,9],[-23,0,3,19],[13,-13]] 步骤3 /输出:[-8,4,7,9,-23,0,3,19,13,-13] 挑战规则: 整数输入n保证大于1。 整数列表的大小保证大于n。 尾随子列表可以小于n(可以在示例和测试用例中看到)。 I / O格式在任何合理的格式中都是灵活的。可以是整数或小数的列表/数组,逗号/空格/换行符分隔的字符串,整数流等。(输出可能不是步骤2的列表的2D列表。步骤3将其展平为单个列表是这项挑战所必需的。) 通用规则: 这是 代码高尔夫球,因此以字节为单位的最短答案会获胜。 不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 标准规则适用于您的答案,因此您可以使用STDIN / STDOUT,具有正确参数的函数/方法和返回类型的完整程序。您的来电。 默认漏洞是禁止的。 如果可能的话,请添加一个带有测试代码的链接。 …

24
乘法相差
让我们定义值的“乘法增量”为:[a0,⋯aN,][a0,⋯aN,][\; a_0, \cdots a_N, \;] [a1/a0,⋯,ai+1/ai,⋯,aN/aN−1][a1/a0,⋯,ai+1/ai,⋯,aN/aN−1] [\; a_1 / a_0, \cdots, a_{i+1} / a_i, \cdots, a_N / a_{N-1} \;] 反向运算(即“乘积反增量”)返回值,以使上述运算得出给定值。 例 给定值1、5、3、2 “ 乘法非增量 ”运算的一般解决方案是:[1,5,3,2][1,5,3,2][\; 1, 5, 3, 2 \;] [a0,a0⋅1a1,a1⋅5a2,a2⋅3a3,a3⋅2a4][a0,a0⋅1⏟a1,a1⋅5⏟a2,a2⋅3⏟a3,a3⋅2⏟a4] [\; a_0, \quad \underset{a_1}{\underbrace{a_0 \cdot 1}}, \quad \underset{a_2}{\underbrace{a_1 \cdot 5}}, \quad \underset{a_3}{\underbrace{a_2 \cdot 3}}, \quad \underset{a_4}{\underbrace{a_3 \cdot 2}} \;] …

10
通过顺序浏览列表列表中的元组
挑战: 给定一个非空的整数列表,返回一个具有以下形式的元组列表:第一个列表元组以第一个列表的每个元素开头,然后是每个后续列表的第一个元素,因此第一个元组应该为[ith element of first list, first element of second list, ... , first element of last list]。例如: [[1, 2, 3], [4, 5, 6], [7, 8, 9]] => [[1, 4, 7], [2, 4, 7], [3, 4, 7], ... 然后执行形式的元组[last element of first list, ith element of second list, first element …

2
粉末玩具中打高尔夫球的技巧
玩得开心,“粉玩具”是高尔夫运动中一个有趣的挑战,尤其是在摆球逻辑方面。 使TPT成为挑战的是许多解决问题的方法: Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic? 这样,TPT高尔夫球技巧的位置将非常有帮助,因此我提出了这个问题。 该线程可能会使用很多缩写。其中很多都是游戏中的元素,因此在Wiki上进行搜索会带给您很多有关它们的信息,例如它们的外观。 这是您可能在此主题中看到的最常见的内容,并附有游戏内描述(及其全名),以供不希望搜索的人使用: SPRK:电力。TPT中所有电子设备的基础是沿着电线和其他导电元件传播的。 过滤:过滤。过滤光子,更改颜色。 ARAY:Ray Emitter。光线碰撞时会创建点。 BTRY:电池。产生无限电。 DRAY:复印机射线。复制前面的一行粒子。 CRAY:粒子射线发射器。创建由其ctype设置的粒子束,范围由tmp设置。 SWCH:切换。仅在打开时进行。(PSCN打开,NSCN关闭) 所有元素清单
9 code-golf  tips  the-powder-toy  code-golf  number  array-manipulation  integer  code-golf  string  decision-problem  boggle  code-golf  array-manipulation  average  code-golf  math  code-golf  decision-problem  restricted-source  code-golf  code-golf  math  primes  code-golf  random  code-golf  tips  perl  code-golf  string  parsing  code-golf  math  number  decision-problem  code-golf  math  number  code-golf  string  alphabet  code-golf  math  geometry  code-golf  interpreter  brainfuck  code-golf  code-golf  decision-problem  boggle  code-golf  math  number  sequence  code-golf  math  code-golf  ascii-art  code-challenge  restricted-source  quine  code-golf  math  decision-problem  number-theory  primes  code-golf  ascii-art  code-golf  integer  graph-theory  chess  code-golf  math  interpreter  code-golf  code-golf  code-golf  ascii-art  code-golf  arithmetic  number-theory  code-golf  string  kolmogorov-complexity  code-golf  string  decision-problem  code-golf  primes  factoring  encode  code-golf  decision-problem  code-golf  geometry  grid  code-golf  quine  code-golf  matrix  code-golf  matrix  code-golf  code-golf  number  array-manipulation  code-golf  array-manipulation  sorting  code-golf  matrix  code-golf  brain-flak 

5
挑战6:运输码头重新贴标!
<<上一页 下一页>> 感谢PPCG社区,圣诞老人成功地将礼物分类到正确的顺序,以便搬进运输码头。不幸的是,运输码头的标志坏了,所以他不知道把所有礼物放在哪里!礼物全部归为一组,而不是按照范围分组,Santa承认这是一个更好的主意。 现在,给定礼物的排序顺序,确定所有可能的最小范围配置,以使礼物的顺序正确。也就是说,找到所有最小范围的配置,以使根据挑战#5中的算法对礼物进行排序不会改变顺序。 挑战 最小范围配置是范围的列表,以使范围各自尽可能小。也就是说,如果指定范围覆盖礼物的特定子集,则该范围的最小值和最大值必须与该子集的最小值和最大值相同。换句话说,缩小封面的任何范围将导致它不再是封面。 挑战在于找到适用于当前尺寸的所有可能的最小范围配置。让我们举个例子:[3, 1, 2, 5, 4, 7, 6] 有一个简单的情况,那就是要占据整个当前配置的范围。在这种情况下,[[1, 7]]将是一个解决方案。 对于具有唯一元素的示例,另一种琐碎的情况是[[3], [1], [2], [5], [4], [7], [6]](因为不需要对范围进行排序)。 在此示例中,我们还看到[[1, 3], [4, 7]]和[[1, 3], [4, 5], [6, 7]]以及与[[1, 3], [5], [4], [6, 7]]和也可以[[1, 3], [4, 5], [7], [6]]。 的最终答案[3, 1, 2, 5, 4, 7, 6]是[[[3], [1], [2], …

23
来临挑战5:将礼物搬到运输码头!
<<上一页 下一页>> 多亏了PPCG社区,Santa设法重新制造了他所有的礼物,并且在装配线之后,现在就可以将这些礼物搬到运输码头了! 圣诞老人的每个运输码头都只能容纳一定范围的当前尺寸,因为运输雪橇是专门针对特定尺寸的(任何较轻的雪橇都会很浪费,更重的雪橇将无法承受负荷)。因此,他需要您帮助他拿礼物并将其分类到正确的运输码头中。 挑战 根据清单和运输码头范围,将礼物稳定地组织成正确的顺序。 让我们以这个为例:礼物是[5, 3, 8, 6, 2, 7],码头范围是[[1, 5] and [6, 10]]。 礼物5,3以及2进入第一对接和礼物8,6和7进入第二平台。可以显示为[[5, 3, 2], [8, 6, 7]]。此列表将比输入更接近排序,但stably意味着在每个扩展坞中,礼物的顺序必须与输入的顺序相同(否则,您可以对整个列表进行排序)。 在这种情况下,您的最终输出将是[5, 3, 2, 8, 6, 7](作为固定列表)。 格式化规格 你将被给定输入作为整数的平面列表,并且在任何合理的格式范围的列表(例如,用于上述情况的范围内,可以给定为[[1, 5], [6, 10]],[1, 5, 6, 10],或[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])。您的输出应该是任何合理格式的整数整数列表。 输入可以包含重复值;在这种情况下,您需要返回它们的所有实例。当前所有尺寸均在一个尺寸范围内,并且您可以假定这些范围永远不会重叠。只要覆盖所有当前尺寸,范围就可能存在差距。 规则 适用标准漏洞 这是 代码高尔夫球,因此以字节为单位的最短答案会获胜 …

7
打假素!
简介/背景 在最近一次关于加密聊天的讨论中,我被挑战去讨论/帮助Fermat素数测试和Carmichael数字。该测试基于a^(p-1) mod p==1始终适用于素数p而不适用于复合材料的前提。现在,carmichael号码本质上是Fermat考验的最大敌人:您必须选择一个号码,a以使其不与素数p相抵a^(p-1) mod p!=1。现在,如果a不是互质,则基本上可以发现一个非平凡的因子p众所周知,保理可能相当困难。特别是在所有因素都足够大的情况下。您现在可能已经意识到,为什么在实践中不经常使用Fermat测试(还有更好的算法),这是因为作为防御者(在安全性方面)您需要为某些数字做与攻击者(即数量)。 因此,既然我们知道为什么这些数字有些引人入胜,我们将以最短的方式生成它们,因此只要需要,我们就可以记住生成的代码! Carmichael编号在OEIS上也称为A002997。已经 存在一个相关的挑战,但是这里的条目没有竞争力,因为它们是针对速度而非大小进行了优化的。同样的论点也适用于反方向,此处的输入可能会在速度上做出取舍,而有利于大小。 规格 输入项 这是一个标准 序列挑战,因此您将正整数或非负整数n作为输入。n可以根据需要选择0或1的索引(请指出)。 输出量 根据需要,您的输出将是n-th carmichael数或第一个ncarmichael数(请指出)。 规格 一个整数x是卡迈克尔数当且仅当x是复合材料和所有的整数y与gcd(x,y)=1,它认为y^(x-1) mod x==1。 谁赢? 这是 代码高尔夫球,因此以字节为单位的最短代码获胜!适用标准IO和漏洞规则。 测试用例 前几个carmichael号码是: 561,1105,1729,2465,2821,6601,8911,10585,15841, 29341,41041,46657,52633,62745,63973,75361,101101, 115921,126217,162401,172081,188461,252601,278545, 294409,314821,334153,340561,399001,410041,449065, 488881,512461
9 code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  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 

13
扩大比较链
与大多数语言不同,Python a<b<c会像在数学中一样进行评估,实际上是比较三个数字,而不是将布尔值a<b与进行比较c。用C(以及许多其他语言)编写此代码的正确方法是a<b && b<c。 在这个挑战中,您的任务是将这样任意长度的比较链从Python /直观表示扩展到如何用其他语言编写。 技术指标 您的程序必须要处理运算符:==, !=, <, >, <=, >=。 输入将具有仅使用整数的比较链。 不用担心一路比较的真实性,这纯粹是语法/语法上的挑战。 输入将没有任何空格,以防止答案因分割空格而使解析变得琐碎。 但是,您的输出可能只有一个空格,要么仅包含&&,要么包含比较运算符和&&,或者两者都不包含,但是要保持一致。 测试用例 Input Output --------------------------------------------------------------- 3<4<5 3<4 && 4<5 3<4<5<6<7<8<9 3<4 && 4<5 && 5<6 && 6<7 && 7<8 && 8<9 3<5==6<19 3<5 && 5==6 && 6<19 10>=5<7!=20 10>=5 && 5<7 && 7!=20 15==15==15==15==15 …
9 code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  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 

30
给定int输入n,输出n * reversed(n)
给定一个整数n,打印输出n * reversed(n) reversed(n)是当您reverse的数字为时得到的数字n。 reverse(512) = 215 reverse(1) = 1 reverse(101) = 101 >>>>>>>> func(5) = 5*5 = 25 func(12) = 12*21 = 252 func(11) = 11*11 = 121 func(659) = 659*956 = 630004 最短的代码胜出! 排行榜 显示代码段 var QUESTION_ID=144816,OVERRIDE_USER=71625;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var …
9 code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  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 

3
旧无绳电话
我需要打电话给朋友,但是无绳电话的按钮无法正常工作。我只能按下的按钮是[上],[下]和[通话]。[上]和[下]可用于导航我最近的通话,[电话]可用于呼叫所选名称。我的电话有一个保存N最近通话的列表,我知道我需要通话的所有朋友都在此列表中。 任务: 您会收到一个数字N和一个名称列表L: N 我的手机可以记住的最近通话次数; L 具有我需要呼叫的顺序的名称。 您必须输出我在最近通话清单的最佳安排中需要进行的按键次数。 例: ->输入: 叫安娜,鲍勃,再叫安娜。最近的通话清单大小为5。 5 Anna Bob Anna ->输出: 可能的最佳安排: Anna, Foo, Bar, Foobar, Bob 5 # Key presses: [Call] Anna, [Up] + [Call] Bob, [Down] + [Call] Anna 更多测试用例: Input: 5, Anna, Bob, Carl Output: 5 Input: 5, Anna, Bob, Carl, Anna …

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.