超置换符号上的一个超能力集(类似于n )是字母\{1,2,...,n\}上的一个字符串,因此\{1,2,...,n\}的每个子集都显示为子字符串(按某种顺序排列)。例如,12342413是四个符号上的超能力集,因为它包含1、2、3、4、12、13、41、23、24、34、123、241、d17、234、d19。
最短的此类字符串的长度和一些例子如下:A348574。
挑战
给定一个由n唯一符号组成的字符串(以及(可选地) n),输出它是否是n符号上的超能力集。
规则这是密码-高尔夫,所以以字节为单位的最短答案获胜。假设只提供有效的输入。假设n大于0输入和输出可以采用任何最方便的形式,例如,只要在答案中指示,符号序列就可以是字符串、列表、整数、n位掩码集合等等。此外,任何东西都可以作为符号使用,条件是它不同于所有其他符号。测试用例In: 1234
Out: False
In: 1
Out: True
In: 11111111
Out: True
In: 123
Out: False
In: 1234512413
Out: False
In: 12342413
Out: True
In: 123424133333333
Out: True
In: 1234567214573126431523674256147325716357
Out: True
In: 122331
Out: False发布于 2022-02-08 01:38:19
ŒPḊfƑɓẆṢ€一个二进式链接,它接受左边的字母表大小N和右边的候选字符串S作为一个整数列表,如果该字符串是该字母表大小的超能力集,则生成1。
ŒPḊfƑɓẆṢ€ - Link: integer, N; list of integers, S
ŒP - powerset of [1..N]
Ḋ - dequeue - removes the empty list
ɓ - new chain with swapped arguments:
Ẇ - all sublists of S
Ṣ€ - sort each
Ƒ - is the dequeued powerset invariant under:
f - filter keep the sorted sublists发布于 2022-02-07 23:50:55
https://codegolf.stackexchange.com/questions/242509
复制相似问题