当前位置: 首页 > news >正文

欧拉函数 线性筛法

欧拉函数

   概念: 在数论,对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。

   通式: φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn) 

其中p1, p2……pn为x的所有质因数,x是不为0的整数 

1) φ(1)=1.

2)每种质因数只一个。比如12=2*2*3那么φ(12)=12*(1-1/2)*(1-1/3)=4

3)若n是质数p的k次幂,φ(n)=p^k-p^(k-1)=(p-1)p^(k-1),因为除了p的倍数外,其他数都跟n互质。

4)φ(mn)=φ(m)φ(n)

5)当n为奇数时,φ(2n)=φ(n)

直接求欧拉数 

/*函数返回值为n的欧拉函数值*/
  int euler(int n)
  {
     int s=n,i,m;
      m=sqrt(n);
      for(i=2;i<=m;i++){
          if(n%i==0)
              s=s/i*(i-1);
          while(n%i==0)
            n/=i;
     }
     if(n>1)
         s=s/n*(n-1);
    return s;
 }


  该算法在可在线性时间内筛素数的同时求出所有数的欧

相关文章:

  • 【条件概率】Headshot, ACM/ICPC NEERC 2009, UVa1636
  • 【数学专题】 卡特兰数
  • 【组合数学】Critical Mass, UVa580
  • 常用算法和数据结构的复杂度速查表
  • 【CodeChef】Just multiply
  • 【CodeChef】LCH15JGH Many bananas
  • 【CodeChef】 Queries on the String
  • 【BZOJ 1051】 受欢迎的牛 【Tarjan】
  • 【数学期望】Crossing Rivers, ACM/ICPC Wuhan 2009, UVa12230
  • 【数学期望】Candy, ACM/ICPC Chengdu 2012, UVa1639 【精度】
  • 【积分】【概率】Probability, UVa11346
  • 【BZOJ 4571】美味 【区间异或最大值】【主席树】【贪心】
  • 【BZOJ 2588】Count on a tree 【树上路径第K大】【LCA+主席树】
  • 【BZOJ 1801】中国象棋
  • 【NOIP 2012】Vigenère 密码
  • JavaScript 如何正确处理 Unicode 编码问题!
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • crontab执行失败的多种原因
  • CSS实用技巧干货
  • JS 面试题总结
  • js作用域和this的理解
  • MD5加密原理解析及OC版原理实现
  • overflow: hidden IE7无效
  • PHP的类修饰符与访问修饰符
  • Python语法速览与机器学习开发环境搭建
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • ReactNative开发常用的三方模块
  • Redis的resp协议
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 第2章 网络文档
  • 给Prometheus造假数据的方法
  • 计算机在识别图像时“看到”了什么?
  • 力扣(LeetCode)22
  • 删除表内多余的重复数据
  • 数据可视化之 Sankey 桑基图的实现
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • ​总结MySQL 的一些知识点:MySQL 选择数据库​
  • #pragma multi_compile #pragma shader_feature
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (算法)求1到1亿间的质数或素数
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (五)Python 垃圾回收机制
  • (一)kafka实战——kafka源码编译启动
  • (一)UDP基本编程步骤
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)LINQ之路
  • .bat批处理(六):替换字符串中匹配的子串
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • 。Net下Windows服务程序开发疑惑