当前位置:   article > 正文

Hdu1452 因子和的积性函数 以及积性函数的一些性质和举例

Hdu1452 因子和的积性函数 以及积性函数的一些性质和举例

在非数论的领域,积性函数指所有对于任何a,b都有性质f(ab)=f(a)f(b)的函数。  

在数论中的积性函数:对于正整数n的一个算术函数 f(n),若f(1)=1,且当a,b互质时f(ab)=f(a)f(b),在数论上就称它为积性函数。

若对于某积性函数 f(n),就算a, b不互质,也有f(ab)=f(a)f(b),则称它为完全积性的。[1]

s(6)=s(2)*s(3)=3*4=12;

s(20)=s(4)*s(5)=7*6=42;

再看 s(50)= 1+2+5+10+25+50=93=3*31=s(2)*s(25),s(25)=1+5+25=31.

这在数论中叫积性函数,当gcd(a,b)=1 s(a*b)=s(a)*s(b);

如果p是素数

s(p^n)=1+p+p^2+...+p^n= (p^(n+1)-1) /(p-1) (1)

hdu1452 Happy 2004

计算因子和 s(2004^X) mod 29 ,

2004=2^2 *3 *167

2004^X=4^X * 3^X *167^X

s(2004^X) ) = (s(2^2X))) * (s(3^X))) * (s(167^X)))

167%29=22

s(2004^X) ) = (s(2^2X))) * (s(3^X))) * (s(22^X)))

a=s(2^2X)=(2^(2X+1)-1) //根据1

b=s(3^X)= (3^(X+1)-1)/2 //根据1

c=s(22^X)= (22^(X+1)-1)/21 //根据1

%运算法则 1. (a*b) %p= ( a%p) *(b%p)

%运算法则 2. (a/b) %p= ( a *b^(-1)%p) 除法的

s(2004^X)=2^(2X+1)-1* (3^(X+1)-1)/2  *(22^(X+1)-1)/21

(a*b)/c %M= a%M* b%M  * inv(c)

c*inv(c)=1 %M    模为1的所有数  invc)为最小可以被c整除的

inv(2)=15,  inv(21)=18    2*15=1 mod 29, 18*21=1 mod 29

s(2004^X)=((2^(2X+1)-1* (3^(X+1)-1)/2  *(22^(X+1)-1)/21mod 29

         =((2^(2X+1)-1* (3^(X+1)-1)*15 *(22^(X+1)-1)*18mod29

b^(-1) b的逆元素(%p)即上面的inv

2的逆元素是15  ,因为2*15=30 % 29=1 % 29

21的逆元素是18  ,因为21*18=378% 29 =1 % 29

因此

a=powi(2,2*x+1,29)-1% 29;

b=(powi(3,x+1,29)-1)*15 % 29;

c=(powi(22,x+1,29)-1)*18 % 29;

ans=a*b% 29*c % 29;

 

  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cmath>
  4. using namespace std;
  5. int _pow( int a, int n )
  6. {
  7. int b = 1;
  8. while( n > 1 )
  9. if( n % 2 == 0 )
  10. {
  11. a = ( a * a ) % 29;
  12. n /= 2;
  13. }
  14. else
  15. {
  16. b = b * a % 29;
  17. n--;
  18. }
  19. return a * b % 29;
  20. }
  21. int main()
  22. {
  23. int X;
  24. int a, b, c;
  25. while( scanf("%d",&X), X )
  26. {
  27. a = _pow( 2, 2 * X + 1 );
  28. b = _pow( 3, ( X + 1 ) );
  29. c = _pow( 22, ( X + 1 ) );
  30. printf("%d\n",( a - 1 ) * (( b - 1 ) * 15) * ( c - 1 ) * 18 % 29) ;
  31. }
  32. return 0;
  33. }


 

性质1

  积性函数的值完全由质数的幂决定,这和算术基本定理有关。

即是说,若将n表示成质因子分解式

则有

性质2

      f为积性函数且有

       f为完全积性函数。

积性

  φ(n) 欧拉函数,计算与n互质的正整数之数目

  μ(n) 莫比乌斯函数,关于非平方数的质因子数目

  gcd(n,k)-最大公因子,当k固定的情况

  d(n) n的正因子数目

  σ(n) n的所有正因子之和

  σk(n)-因子函数,n的所有正因子的k之和,当中k可为任何复数

  1(n) -不变的函数,定义为 1(n) = 1 (完全积性)

  Id(n)-单位函数,定义为 Id(n) = n(完全积性)

  Idk(n)-幂函数,对于任何复数、实数k,定义为Idk(n) = n^k(完全积性)

  ε(n) -定义为:若n = 1ε(n)=1;若 n > 1ε(n)=0。别称为对于狄利克雷卷积的乘法单位(完全积性)

  λ(n) -刘维尔函数,关于能整除n的质因子的数目

  γ(n),定义为γ(n)=(-1)^ω(n),在此加性函数ω(n)是不同能整除n的质数的数目

另外,所有狄利克雷特征均是完全积性的[1]

非积性

  ·曼戈尔特函数:当n是质数p的整数幂,Λ(n)=ln(p),否则Λ(n)=0

  不大于正整数n的质数的数目π(n)

  整数拆分的数目P(n):一个整数能表示成正整数之和的方法的数目[2]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/265485
推荐阅读
相关标签
  

闽ICP备14008679号