不断除以2~sqrt(n)内的素数表,求出每个素数的个数

结构体:

struct factor{
    int x;//质因子
    int cnt;//质因子个数
}fac[10];//int范围内10个够了

循环出完后n为1,正常

n不为1,说明n本来就是质数,质因子是本身>sqrt(n)

eg:分解质因数

#include<iostream>
#include<cmath>
using namespace std;const int N=1e6;
bool p[N]={0};
int prime[N],pNum=0;
int facNum;//质因子个数struct factor{int x;//质因子int cnt;//质因子个数
}fac[10];//int范围内10个够了//求素数表
void Find_Prime(){for(int i=2;i<N;i++){if(p[i]==false){prime[pNum++]=i;for(int j=i+i;j<N;j+=i){p[j]=true;}}}
}//分解质因数
void qfd(int n){facNum=0;int sqr=(int)sqrt(n);for(int i=0;i<pNum&&prime[i]<=sqr;i++){if(n%prime[i]==0){fac[facNum].x=prime[i];fac[facNum].cnt=0;while(n%prime[i]==0){fac[facNum].cnt++;n/=prime[i];}facNum++;}}//n本身是质数if(n>1){fac[facNum].x=n;fac[facNum].cnt=1;facNum++;}
}void showResult(){bool isFirst=true;for(int i=0;i<facNum;i++){for(int j=0;j<fac[i].cnt;j++){if(isFirst)   {cout<<fac[i].x;isFirst=false;}else cout<<"*"<<fac[i].x;}}cout<<endl;
}int main(){Find_Prime();int n;while(cin>>n){qfd(n);cout<<n<<"=";showResult();}return 0;
}

算法笔记5.5 质因子分解相关推荐

  1. 算法笔记(胡凡)学习笔记@Kaysen

    本文旨在记录算法笔记学习过程中的收获和一些知识点,部分易错知识点只针对个人而言,CCF-CSP考试冲鸭!!! Chapter 2 C/C++快速入门(易错知识点) 2.1 基本数据类型 变量定义注意区 ...

  2. codeup墓地目录(算法笔记习题刷题笔记)

    在线codeup contest 地址:http://codeup.cn/contest.php Contest100000575 - <算法笔记>3.1小节--入门模拟->简单模拟 ...

  3. 算法笔记知识点整理大全

    每次刷题都觉得自己吃了知识点不全,基础不牢固的亏,刷题的时候目标也不明确,于是看完了算法笔记并把知识点归纳了一下,当然直接看书会更加详细,这个归纳只是学习时加深印象以及方便自己之后回顾而已:之后刷题大 ...

  4. 算法笔记CodeUp第一至第六章刷题记录

    文章目录 <算法笔记>2.2小节--C/C++快速入门->顺序结构 1.例题1-1-1 按要求输出信息(1) 2.例题1-1-2 按要求输出信息(2) 3.例题1-2-1 求两个整数 ...

  5. codeup《算法笔记》题目索引(题目+答案+思路)

    <算法笔记>2.1小节--C/C++快速入门->基本数据类型 本小节无练习题orz <算法笔记>2.2小节--C/C++快速入门->顺序结构 <算法笔记> ...

  6. 《算法笔记》——笔记

    算法笔记 胡凡 曾磊 主编 机械工业出版社 文章目录 算法笔记 C/C++快速入门 提醒 memset sscanf与sprintf 引用 浮点数的比较 圆周率 复杂度 黑盒测试 入门篇(1)--入门 ...

  7. 素数问题与质因子分解

    素数 素数又称质数,是除了1和本身之外不能被其他数整除的一类数字.用数学语言描述即是,对给定的正整数n,如果对于任意的正整数a(1<a<n),都有n%a!=0成立,那么称n是素数:否则称为 ...

  8. 数据结构与算法笔记(青岛大学王卓老师视频)

    写在前面的话: 因为在学习数据结构之前,学习过一年的算法,所以有一些基础,一些我觉得 没必要的代码或知识就没写上,记得多是一些知识点,写的可能对于别人来说 很难接受,望谅解.我学习算法是在Acwing ...

  9. 算法笔记——数学相关

    算法笔记--数学相关 高精度 乘法逆元 排列组合 二项式定理 质数的判定和应用 约数 拓展欧几里得 大步小步算法(BSGS) 拓展大步小步算法 快速乘和快速幂 矩阵相关 欧拉函数 欧拉定理及费马小定理 ...

最新文章

  1. 0基础学python-零基础直接学习Python入门IT合适吗?
  2. 保护DNS对数字网络安全越来越重要—Vecloud
  3. 【放洋屁了】知识焦虑-几点感慨
  4. [转]样式篇之如何实现合并单元格效果
  5. macos安装盘第三方工具制作_一步一步教你为macOS创建系统安装盘
  6. 检测php加密方式,一种php加密方式
  7. RhinoMock异常ExpectationViolationException以及解决
  8. [Python] Ubuntu 安装/卸载 python
  9. android高德地图热力图,热力图-自有数据图层-示例中心-JS API 示例 | 高德地图API...
  10. 第四章 需求分析,用例分析法
  11. H2O自动化机器学习框架介绍与搭建笔记
  12. linux卸载小企鹅输入法,Linux(FC)小企鹅输入法的安装
  13. java推送微信消息换行_微信公众平台开发教程之文本消息如何换行(第十二课)
  14. Z05 - 046、工作流调度实现方式
  15. 软件测试行业未来发展趋势 2020软件测试行业现状及市场前景规模分析
  16. spring-boot+freemarker完美导出word文档
  17. 你生日那天的宇宙有多美?Python制作小工具一键查询图片!
  18. go protoc 项目安装要点
  19. 化学中的机器学习方法1
  20. APIO2019简要题解

热门文章

  1. 输入被除数和除数,求商
  2. python实现pdf转ppt_Python实现批量将ppt转换为pdf
  3. Virtual reality
  4. 取模是什么意思python_Python中的取模运算
  5. uboot启动的第二阶段分析
  6. DELL 7080MFF 黑苹果安装,优化
  7. privat,pubic的区别
  8. “谁养鱼”,这是一个很有趣的逻辑推理题,传说是爱因斯坦提出来的,他宣称世界上只有2%的人能解出这个题目,传说不一定属实,但是这个推理题还是很有意思的
  9. 安卓.odex文件的反编译
  10. 三国杀充值登陆服务器响应超时,三国杀登录超时怎么办?登陆失败解决方法[多图]...