题目简述:就是给一个数,把他拆分成多个素数的乘积,这正好是算术基本定理。本题我的解决方法是埃氏素数筛+质因数保存。。。开始T掉了,是因为我在最后枚举了素数,保存他们的次数,然后两次for去查询他们的次数这样需要遍历前面所有素数。显的十分浪费时间,因为如果给的数非常大,并且次数小的次数很多那么我们外面的第一层FOR就是N第二层是一个遍历内部次数输出也达到挺大程度(素数小的并且多的化N*M会很大)加上T的话很可能会超时,其实直接保存质因数在另一个素数就可以了,然后遍历输出即可(在此警醒自己,做题不要拿着题目就开做直接暴力,要精简算法的复杂程度,理清思路,这样避免后面来改动)

算术基本定理可表述为:任何一个大于1的自然数 N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积

最后上代码

 1 #include<iostream>
 2 #include<stdio.h>
 3 #include<string.h>
 4 using namespace std;
 5 const int MAXN=65536;
 6 bool isPrim[MAXN];
 7 int prime[MAXN];
 8 int cnt[MAXN];
 9 int sum,cnt1;
10 void initPrime()
11 {
12     int i;
13     memset(isPrim,0,sizeof(0));
14     isPrim[0]=0;
15     isPrim[1]=0;
16     int k=0;
17     for (i=2; i<MAXN; i++)
18     {
19         if (!isPrim[i])
20         {
21             prime[k++]=i;
22             int j=2;
23             while (i*j<MAXN)
24             {
25                 isPrim[i*j]=1;
26                 j++;
27             }
28         }
29     }
30     sum=k;
31     return;
32 }
33 void sovl(int x)
34 {
35     for (int i=0; ; i++)
36     {
37         if (prime[i]>x)break;
38         while (x % prime[i]==0)
39         {
40             cnt1++;
41             cnt[cnt1]=prime[i];
42             x=x/prime[i];
43         }
44     }
45     return;
46 }
47 int main()
48 {
49     initPrime();
50     int t,num,time;
51     scanf("%d",&t);
52     while (t--)
53     {
54         memset(cnt,0,sizeof(cnt));
55         scanf("%d",&num);
56         time=0;
57         cnt1=0;
58         sovl(num);
59         for (int i=1; i<=cnt1; i++)
60         {
61             time++;
62             if (time==1)
63             {
64                 printf("%d",cnt[i]);
65             }
66             else
67                 printf("*%d",cnt[i]);
68         }
69         printf("\n");
70     }
71     return 0;
72 }

转载于:https://www.cnblogs.com/bluefly-hrbust/p/8946762.html

分解质因数FZU - 1075相关推荐

  1. C语言,分解质因数一个解法!_只愿与一人十指紧扣_新浪博客

    题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. 现在,你的程序要读入一个 ...

  2. 阶乘分解质因数[经典题组合数学枚举质因子]

    引入问题: 给定整数NNN,试把阶乘 N!N!N! 分解质因数,按照算术基本定理的形式输出分解结果中的 pip_ipi​ 和 cic_ici​即可. N!N!N!分解质因数后的结果,共若干行,每行一对 ...

  3. 【数学专题】 筛质数、分解质因数和快速幂

    筛质数 质数筛法分为埃氏筛和线性筛. 埃氏筛没有线性筛时间复杂度好,不常用,但是他的时间复杂度分析方法却比较常用. 埃氏筛的时间复杂度为O(nloglogn)≈O(n)O(nloglogn)≈O(n) ...

  4. 【c语言】分解质因数

    将一个正整数N(1<N<32768)分解质因数.例如,输入90,打印出90=233*5. 样例输入 66 样例输出 66=2311 #include <stdio.h> int ...

  5. java求最大公约数(分解质因数)

    下面是四种用java语言编程实现的求最大公约数的方法: package gcd;import java.util.ArrayList; import java.util.List;public cla ...

  6. 负数分解质因数java_Java经典案例之-“分解质因数”

    /** * 描述:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. * 分析: * 对n进行分解质因数,应该先找到一个最小的质数k,然后按照下列步骤进行: * (1)如果这个质数恰 ...

  7. python【蓝桥杯vip练习题库】ADV-359分解质因数

    试题 算法提高 分解质因数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个正整数n,尝试对其分解质因数 输入格式 仅一行,一个正整数,表示待分解的质因数 输出格式 仅一行, ...

  8. python【蓝桥杯vip练习题库】BASIC-16分解质因数(数论 质数分解)

    试题 基础练习 分解质因数 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 求出区间[a,b]中所有整数的质因数分解. 输入格式 输入两个整数a,b. 输出格式 每行输出一个数的分解 ...

  9. 求助matlab分解质因数,Matlab

    Since Apr.6th,2016 linspace:产生一系列整数.linspace(a, b, c)产生的数 x 范围为 a≤x≤b ,总数为 c . 注意和 a:b:c的区别,a:b:c中 c ...

  10. C语言经典例14-将一个正整数分解质因数

    目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 将一个正整数分解质因数.例如:输入909090,打印出 90=2∗3∗3∗590 = 2 * 3 * 3 * 590=2∗3∗3∗5 2 分 ...

最新文章

  1. java 值对象_java 中设计模式(值对象)的实例详解
  2. 别再说程序员不懂时尚
  3. Go语言接口(interface)简单应用
  4. IOS学习之路七(使用 Operation 异步运行任务)
  5. C#使用Xamarin开发可移植移动应用进阶篇(9.混淆代码,防止反编译)
  6. matlab实现三次样条插值
  7. 三问Spring事务:解决什么问题?如何解决?存在什么问题?
  8. chrome和火狐获取资源
  9. 用户登录功能:说简单也困难
  10. 关于LAMP配置Let’s Encrypt SSL证书
  11. 全国计算机应用考试试卷,全国信息化计算机应用技术水平教育考试试卷
  12. Maven—Eclipse设置Maven项目JDK版本
  13. [工具] Sublime Text 使用指南
  14. redux-chunk中间件的安装和使用-(二)
  15. 计算流体力学c语言教程,计算流体力学教程
  16. miui9如何不自动杀进程,小米9怎么关闭自动更新 具体操作方法解析
  17. electron 自定义标题栏_如何在Electron Framework中创建自定义标题栏(灵感来自Visual Studio Code标题栏)...
  18. vue:无法加载文件..
  19. A graph auto-encoder model for miRNA-disease associations prediction 论文解析
  20. 现在公司都不缺人了?软件测试工作经历3年,面试居然被坑了....

热门文章

  1. 电脑登录微信,手机退出微信,电脑端微信仍然在线(IOS)
  2. R语言做生信分析系列(一)—— R软件简单安装
  3. Iframe的allow属性生效时机
  4. allegro 导 bom
  5. Cesium之【空间面积】测量
  6. SpringCloud之服务网关(总体第五篇)
  7. 星空投影夜灯-隐私政策协议
  8. 【转摘】芯片的本质是什么
  9. IMX8MQ MEK 开发板安卓 8.1-2.0.0 环境搭建过程记录
  10. 计算机无法读出u盘,教你win10系统电脑无法识别u盘的应对办法