阿比利亚秩序


17

一些背景

在数学中,是一个元组(G ^,•)其中G ^是一组和•是上的操作ģ使得对于任何两个元素XÿģXÿ也是ģ

对于某些XÿžG ^,碱性基团公理如下:

  • ģ关闭 •下即Xÿģ
  • 操作•是关联的,即x •(y z)=(xy)• z
  • ģ具有身份元素,即存在Èģ使得 XË = X为所有X
  • 操作•是可逆的,即在G中存在ab使得ax = yyb = x

好的,那是小组。现在我们将一个Abelian组定义为一个组(G,•),使得•是可交换运算。即,xy = yx

最后定义。组的顺序G,•),表示为| G |,是集合G中元素的数量。

任务

阿贝尔阶是整数n,因此每个n阶组都是阿贝尔阶。OEIS中的阿贝尔订单顺序为A051532。给定整数n,您的工作是产生此序列的第n个项(1索引)。您必须支持最大最大整数的输入,以便不会溢出。

输入可以来自函数参数,命令行参数,STDIN或任何方便的参数。

输出可以从函数返回,打印到STDOUT或任何方便的东西。什么也不要写到STDERR。

分数是字节数,最短获胜。

例子

以下是序列的前25个术语:

1, 2, 3, 4, 5, 7, 9, 11, 13, 15, 17, 19, 23, 25, 29, 31, 33, 35, 37, 41, 43, 45, 47, 49, 51

Answers:


6

CJam(35 32字节)

0q~{{)_mF_z~2f>@::#@m*::%+1&}g}*

在线演示

解剖

改写OEIS中的某些信息,阿贝尔阶是无立方幂幂阶;和幂零订单的数字n对于没有主用功率因数p^k | n是要一致1另一个素数模的模数。

如果我们通过无立方体测试,则幂等性测试将减少为

  • 没有素数等于对1另一个素数取模
  • 如果素数的倍数pk,则p^k不得将1另一个素数取模。

但是第二个条件意味着第一个条件,因此我们可以将其减少为

  • 如果素数的倍数pk,则p^k不得将1另一个素数取模。

请注意,“另一个”一词是不必要的,因为p^a == 0 (mod p)for a > 0

0q~{       e# Loop n times starting from a value less than the first Abelian order
  {        e#   Find a number which doesn't satisfy the condition
    )_     e#     Increment and duplicate to test the condition on the copy
    mF     e#     Find prime factors with multiplicity
    _z~    e#     Duplicate and split into the primes and the multiplicities
    2f>    e#     Map the multiplicities to whether or not they're too high
    @::#   e#     Bring factors with multiplicities to top and expand to array of
           e#     maximal prime powers
    @m*::% e#     Cartesian product with the primes and map modulo, so for each
           e#     prime power p^k and prime q we have p^k % q.
    +      e#     Combine the "multiplicity too high" and the (p^k % q) values
    1&     e#     Check whether either contains a 1
  }g
}*

1
感谢您的详尽而有趣的解释!:)
传真机

5

CJam,46 45字节

0{{)_mf_e`_:e>3a>\{~\,:)f#}%@fff%e_1e=|}g}ri*

在这里测试。

我正在使用OEIS页面上给出的条件:

我们的因式分解nBE 。然后是在这个序列中,如果对所有和不等于所有的和和。--- TD野老,2007年3月25日p1e1...prernei < 3ipik1 (mod pj)ij1 ≤ k ≤ ei

我相当确定这可以打高尔夫球,尤其是检查最后一个状况。


3

Pyth,37个字节

e.f!&tZ|f>hT2JrPZ8}1%M*eMJs.b*LYSNJ)Q

测试套件

使用OEIS中的公式,无立方,且无主功率因数为1的主因数,而不是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.