Description

任意一个正整数可以分解成唯一的质因数的乘积,给出正整数,请计算出它的质因数分解式。

输入

每行一个正整数2<=n<=10^8。

输出

每行输出一个对应结果。使用”^”表示幂,”*”表示乘,质因子应该按从小到大的顺序输出,如果某一个质因子只有一次,那么就不要输出它的幂。

Sample Input

2

6

36

Sample Output

2

2*3

2^2*3^2

思路分析:这道题应该抓住第一个质因数一定小于第二个质因数,所以,我们应该先试除以第一个质因数,如果能除尽,然后就继续除,统计除了多少个第一个质因数,然后一旦除不尽了,就试着找第二个质因数,再次统计,如果为1就代表除完了

#include <stdio.h>
#include <iostream>
using namespace::std;
int main()
{//分解质因数且求其指数无非就是记录求了我们除了多少个质数1,然后对其剩下的数,再除质数2,除了多少个质数2,这样这几个个数就是我们的指数int n;while (scanf("%d", &n)!=EOF) {int i, j;//思路分析。首先,分解质因数针对的是合数,只有能被整除的数才可分解质因数,因此我们首先目的就是看下这个数是否能被整除for (i = 2; i * i <= n; i++) {if (n % i == 0) {//关于每个指数的位置,不难发现,对于24来说,2的三次方*3才是24,也就是说,一般就先考虑最小的那个位置的质数for (j = 0; n % i == 0; j++) {//j就是我们的指数,除了3个2之后,2除尽了n /= i;}//注意计算机不能一下子就拆分出两个质数,只能一个一个的来拆分,先搞定左边质数以及指数,再搞定右边质数以及指数//里面的for循环完成后,就代表一个质数以及指数完成了!对剩下的数再进行下一个质数以及指数的运算if (j < 2){printf("%d", i);}else printf("%d^%d", i, j);if (n != 1)printf("*");if (n == 1)printf("\n");}}if(n!=1)printf("%d\n", n);}
}

XTU OJ 质因数分解相关推荐

  1. 质因数分解唯一定理(XTU OJ)

    今年的oj 很有几道题用到了,这里介绍一下 质因数分解(唯一分解定理) 基本概念: 每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,叫做这个合数的分解质因数. 分解质因数只针对合 ...

  2. java 判断一个数是正整数_【Java】P1075 质因数分解—关于数学方法在解题中的运用—(OJ:洛谷)...

    点击上方"蓝字"关注我们了解更多算法思路01题目 题目来源:洛谷OJ 题目链接: https://www.luogu.com.cn/ 题目描述 已知正整数n是两个不同的质数的乘积, ...

  3. 清橙OJ A1036.分解质因数

    题目地址:http://www.tsinsen.com/ViewGProblem.page?gpid=A1036 //清橙OJ A1036.分解质因数 //http://www.tsinsen.com ...

  4. ACMNO.39 分解质因数 求出区间[a,b]中所有整数的质因数分解。蓝桥杯训练!

    题目描述 求出区间[a,b]中所有整数的质因数分解. 输入 输入两个整数a,b. 输出 每行输出一个数的分解,形如k=a1*a2*a3...(a1< =a2< =a3...,k也是从小到大 ...

  5. 素数、最大公约数、最下公倍数、质因数分解

    2013-08-18 11:20:43 素数.最大公约数.最下公倍数.质因数分解都是与素数相关的,解决了素数的问题,其他的都可以此为基础求解. 小结: 求1到n之间的素数的基本方法是通过遍历2到sqr ...

  6. 质数判断及质因数分解 质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。 0和1不是质数 除了0,1,质数以外其他的数叫合数

    题目: 质数判断及质因数分解    质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 0和1不是质数 除了0,1,质数以外其他的数叫合数 代码部分: C++实现 #include ...

  7. C++实现质因数分解

    质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除(除0以外)的数称之为素数(质数):否则称为合数.根据算术基本定理,每一个比1大的整数,要 ...

  8. T^TOJ - 1251 - 。◕‿◕。TMD - 欧拉函数 - 质因数分解

    http://www.fjutacm.com/Problem.jsp?pid=1251 想了很久,一开始居然还直接枚举因子d,计算重复了. 首先你要找与n的最大公因子大于m的x的个数. \[\sum\ ...

  9. 3164 质因数分解

    3164 质因数分解  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解 题目描述 Description (多数据)给出t个数,求出它的质因子个数. 数据没 ...

最新文章

  1. android:activity的生命周期及它们之间的传值
  2. python获取硬件信息
  3. 030_SpringBoot全局属性配置文件
  4. Oracle-PL/SQL基础
  5. 前端面试题集锦(一)之HTML部分
  6. 如果你扯了团队后腿,你应该内疚
  7. linux相关英文书记,Linux常用软件(英文介绍)
  8. java循环树_for循环输出树木的形状【java】
  9. codeforces 600A Extract Numbers
  10. 文件比较软件修改比较文件时间戳方法
  11. Paper Reading: Re-ranking Person Re-identification with k-reciprocal Encoding
  12. 大数据方面核心技术有哪些?
  13. ubuntu系统克隆
  14. 【渝粤题库】国家开放大学2021春1089现代教育思想题目
  15. 0 -1 分布(两点分布)
  16. PHP Class - 图片水印
  17. 永恒之塔linux服务端,【永恒之塔单机5.8-6.5服务端】2020.06首发一键安装PC大型端游单机游戏客户端支持局域网联机玩[附视频搭建教程]...
  18. git新branch创建
  19. windows命令行XCOPY命令
  20. python爬虫,矢量数据地铁线路获取

热门文章

  1. 初中英语课本里的惊天秘密
  2. 合并两个有序数组(C++)
  3. 88. 合并两个有序数组 JavaScript实现
  4. 从知乎[悟空]看一个成熟的Anti-Spam系统演进之路
  5. go语言微服务项目,基础篇--go2-高级语法
  6. 苹果CMSV10高端安全干净模板宽屏大图轮播支持DIY的自适应模板
  7. Arduino开发实例-MAX30100传感器模块连接问题解决
  8. 学生党平价高音质蓝牙耳机分享,五款电竞爱好者最爱低延迟蓝牙耳机
  9. Appiun钉钉打卡程序demo
  10. Android Query managedQuery