定义和简单性质

欧拉函数在OI中是个非常重要的东西,不知道的话会吃大亏的.

欧拉函数用希腊字母φ表示,φ(N)表示N的欧拉函数.

对φ(N)的值,我们可以通俗地理解为小于N且与N互质的数的个数(包含1).

欧拉函数的一些性质:

1.对于素数p, φ(p)=p-1,对于对两个素数p,q φ(pq)=pq-1

欧拉函数是积性函数,但不是完全积性函数.

2.对于一个正整数N的素数幂分解N=P1^q1*P2^q2*...*Pn^qn.

φ(N)=N*(1-1/P1)*(1-1/P2)*...*(1-1/Pn).

3.除了N=2,φ(N)都是偶数.

4.设N为正整数,∑φ(d)=N (d|N).

根据性质2,我们可以在O(sqrt(n))的时间内求出一个数的欧拉函数值.

如果我们要求1000000以内所有数的欧拉函数,怎么办.

上面的方法复杂度将高达O(N*sqrt(N)).

我们来看看线性筛法的程序:

#include<iostream>
#include<cstdio>
using namespace std;
int euler[];
int Max = ;
void Init(){
euler[]=;
for(int i=;i<Max;i++)
euler[i] = i;
for(int i = ;i < Max;i++)
if(euler[i] == i)
for(int j = i;j < Max;j += i) //注意,j += i
euler[j] = euler[j] / i * (i - );//先进行除法是为了防止中间数据的溢出
}
int main()
{
int a;
cin>>a;
Init();
cout<<euler[a];
return ;
}

妙啊!!!!!!!!!!!

欧拉函数φ

     欧拉定理是用来阐述素数模下,指数同余的性质。

     欧拉定理:对于正整数N,代表小于等于N的与N互质的数的个数,记作φ(N)

     例如φ(8)=4,因为与8互质且小于等于8的正整数有4个,它们是:1,3,5,7

    欧拉定理还有几个引理,具体如下:

    ①:如果n为某一个素数p,则φ(p)=p-1;

    ①很好证明:因为素数p的质因数只有1和它本身,p和p不为互质,所以φ(p)=p-1;

    ②:如果n为某一个素数p的幂次,那么φ(p^a)=(p-1)*p^(a-1);

    ②因为比p^a小的数有p^a-1个,那么有p^(a-1)-1个数能被p所整除(因为把1~p^a-1的p的倍数都筛去了)

所以φ(p)=p^a-1-(p^(a-1)-1)=(p-1)*p^(a-1)

    ③:如果n为任意两个数a和b的积,那么φ(a*b)=φ(a)*φ(b)

    ③因为比a*b小的数有a*b-1个,条件是a与b互质

那么可以知道,只有那些既满足a与其互质且既满足b与其互质的数满足条件。

根据乘法原理,这样的数可以互相组合,那么就有φ(a)*φ(b)个

所以可以得知φ(a*b)=φ(a)*φ(b) (注意条件必须满足a和b互质)

 ④:设n=(p1^a1)*(p2^a2)*……*(pk^ak) (为N的分解式)

         那么φ(n)=n*(1-1/p1)*(1-1/p2)*……*(1-1/pk)

   ④因为各个分解完的p1、p2、……pk均为素数,所以它们均为互质的

每次再刨去它们本身,乘起来

剩下的运用容斥原理,再根据引理②和引理③就可以得出

  其实欧拉定理是费马小定理的推论。。。

欧拉定理:a^(φ(m))同余1(mod m) (a与m互质)

费马小定理是数论中的一个定理。其内容为假如a是一个整数,p是一个质数的话,那么:

  ap = a(mod p)

  假如a不是p的倍数的话,那么这个定理也可以写成:

  ap − 1 = 1(mod p)

欧拉函数&&欧拉定理的更多相关文章

  1. 欧拉函数&欧拉定理&降幂 总结

    欧拉函数&欧拉定理&降幂 总结 标签:数学方法--数论 阅读体验:https://zybuluo.com/Junlier/note/1300214 这年头不总结一下是真的容易忘,老了老 ...

  2. HDU4549 M斐波那契数列 矩阵快速幂+欧拉函数+欧拉定理

    M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Sub ...

  3. Super A^B mod C (快速幂+欧拉函数+欧拉定理)

    题目链接:http://acm.fzu.edu.cn/problem.php?pid=1759 题目:Problem Description Given A,B,C, You should quick ...

  4. POJ3696【欧拉函数+欧拉定理】

    题意: 求最小T,满足L的倍数且都由8组成,求长度: 思路: 很强势的福利:点 图片拿出去食用更优 //#include<bits/stdc++.h> #include<cstdio ...

  5. 2^x mod n = 1(欧拉定理,欧拉函数,快速幂乘)

    2^x mod n = 1 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  6. 数论的欧拉定理证明 &amp; 欧拉函数公式(转载)

    欧拉函数 :欧拉函数是数论中很重要的一个函数,欧拉函数是指:对于一个正整数 n ,小于 n 且和 n 互质的正整数(包括 1)的个数,记作 φ(n) . 完全余数集合:定义小于 n 且和 n 互质的数 ...

  7. BZOJ3884: 上帝与集合的正确用法(欧拉函数 扩展欧拉定理)

    Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 3860  Solved: 1751[Submit][Status][Discuss] Descripti ...

  8. XMU 1615 刘备闯三国之三顾茅庐(三) 【欧拉函数+快速幂+欧拉定理】

    1615: 刘备闯三国之三顾茅庐(三) Time Limit: 1000 MS  Memory Limit: 128 MBSubmit: 45  Solved: 8[Submit][Status][W ...

  9. [洛谷P5106]dkw的lcm:欧拉函数+容斥原理+扩展欧拉定理

    分析 考虑使用欧拉函数的计算公式化简原式,因为有: \[lcm(i_1,i_2,...,i_k)=p_1^{q_{1\ max}} \times p_2^{q_{2\ max}} \times ... ...

随机推荐

  1. C# WebKitBrowser 设置内容

    WebKit.WebKitBrowser kitBrowser = new WebKit.WebKitBrowser(); kitBrowser.Dock = DockStyle.Fill; // k ...

  2. 视频cover占满

    /* 关键属性 */ object-fit: fill; //被替换的内容的大小,以填补该元素的内容框:对象的具体对象的大小是元素的使用宽度和高度. object-fit: contain;被替换的内 ...

  3. 00 python基础知识

    ''' ''' print('hello world!') ''' 变量 ''' # 变量的:‘tank’,会在内存中产生一份内存地址 #变量名:相当于一个门牌号,用于与变量进行绑定 # = :用来把 ...

  4. CentOS6.9下NFS配置说明(转载)

    NFS是Network File System的缩写,即网络文件系统.它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端可以通过挂载(mount)的方式将NFS ...

  5. 【源码阅读】opencv中opencl版本的dft函数的实现细节

    1.函数声明 opencv-3.4.3\modules\core\include\opencv2\core.hpp:2157 CV_EXPORTS_W void dft(InputArray src, ...

  6. react 父组件调用子组件方法

    import React from 'react'import '../page1/header.css'import { Table } from 'antd'import Child from ' ...

  7. Free中的buffer和cache理解

    吐血推荐文章: Linux内存中的Cache真的能被回收么? free中的buffer和cache: redhat对free输出的解读 两者都是RAM中的数据.简单来说,buffer是即将要被写入磁盘 ...

  8. forcedirectories和CreateDirectory

    forcedirectories和CreateDirectory都能创建文件ForceDirectories可以创建多层目录. 如果你创建一个目录为c:\mymusic\music 如果你的C盘不存在 ...

  9. 入口文件 index.php

    一. 运行流程 The index.php serves as the front controller, initializing the base resources needed to run ...

  10. noip模拟赛 浮游大陆的68号岛

    题目描述 妖精仓库里生活着黄金妖精们,她们过着快乐,却随时准备着迎接死亡的生活. 换用更高尚的说法,是随时准备着为这个无药可救的世界献身. 然而孩子们的生活却总是无忧无虑的,幼体的黄金妖精们过着天真烂 ...