挑战:
输入:
正整数的排序列表。
输出:
在将每个整数中的数字向左旋转其索引次数并再次对修改后的列表进行排序后,仍处于完全相同索引的整数数量。
例:
输入:[8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
输出(基于0的索引):6
输出(基于1的索引):5
为什么?
基于0的索引:
After rotating each: [8,94,73,102,592,276,8227,3338,9217,63784,89487,7887471]
Sorted again: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Input indices: 0 1 2 3 4 5 6 7 8 9 10 11
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Modified indices: 0 2 1 3 5 4 7 6 8 9 10 11
Equal indices: ^ ^ ^ ^ ^ ^
So the output is: 6
基于1的索引:
After rotating each: [8,49,37,021,925,762,2278,3383,2179,37846,94878,8874717]
Sorted again: [8,(0)21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Input indices: 1 2 3 4 5 6 7 8 9 10 11 12
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Modified indices: 1 4 3 2 6 5 9 7 8 10 11 12
Equal indices: ^ ^ ^ ^ ^
So the output is: 5
挑战规则:
- 确保输入列表仅包含正整数。
- 确保输入列表从最低到最高排序。
- 输入列表保证至少包含两个项目。
- 正如您在上面看到的,基于0的索引和基于1的索引都是允许的。请在您的答案中说明您使用了哪两种,因为输出可能会有所不同!
0
旋转后的前导s被忽略,这可以从上面的基于1的示例中看到,其中整数在旋转后102
变为021
,然后被视为21
。- 整数在输入列表中保证是唯一的,并保证在轮换完成后保持唯一。
- 请注意,我们仅查看与输入的位置相关的旋转整数的位置,而不查看与input-list的值相关的位置。为了弄清楚我的意思:在使用input-list
[1234,3412]
和基于1的索引时,列表[2341,1234]
在旋转每个整数后变成其索引次数,然后在排序时变为[1234,2341]
。尽管原始输入列表和旋转列表都在开头1234
处都包含整数,但它们并不相同!旋转后1234
是3412
前。因此0
,此输入列表的1索引输出为,因为两个整数交换了位置。 - 输入是灵活的。可以是整数的列表/流/数组/字符串/数字数组等。如果您不将输入作为整数,请说明您使用的内容。
一般规则:
- 这是代码高尔夫球,因此最短答案以字节为单位。
不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 - 标准规则适用于具有默认I / O规则的答案,因此允许您使用STDIN / STDOUT,具有适当参数的函数/方法以及返回类型的完整程序。你的来电。
- 默认漏洞是禁止的。
- 如果可能的话,请添加一个带有测试代码的链接(即TIO)。
- 另外,强烈建议为您的答案添加说明。
测试用例:
Input: [8, 49, 73, 102, 259, 762, 2782, 3383, 9217, 37846, 89487, 7471788]
0-based output: 6
1-based output: 5
Input: [1234, 3412]
0-based output: 2
1-based output: 0
Input: [2349, 2820, 17499, 21244, 29842, 31857, 46645, 56675, 61643, 61787]
0-based output: 3
1-based output: 0
Input: [4976, 11087, 18732, 22643, 52735]
0-based output: 2
1-based output: 3
Input: [4414, 5866, 7175, 8929, 14048, 16228, 16809, 19166, 24408, 25220, 29333, 44274, 47275, 47518, 53355]
0-based output: 4
1-based output: 4
Input: [11205, 16820, 63494]
0-based output: 1
1-based output: 3
随意使用此取消高尔夫的05AB1E程序生成更多随机测试用例(或从中获得启发),其中输入为随机列表的大小(注意:此生成器的输出可能不符合规则“在整数中保证整数是唯一的”)。输入列表,并保证在轮换完成后保持唯一 ”,因此在使用时请记住这一点。)