前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蓝桥杯 基础练习 分解质因数

蓝桥杯 基础练习 分解质因数

作者头像
Meng小羽
发布2019-12-23 16:40:13
3570
发布2019-12-23 16:40:13
举报
文章被收录于专栏:Debug客栈

问题描述 

 求出区间a,b中所有整数的质因数分解。

输入格式

  输入两个整数a,b。

输出格式 

 每行输出一个数的分解,形如k=a1*a2*a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例)

样例输入

3 10

样例输出

3=3

4=2*2

5=5

6=2*3

7=7

8=2*2*2

9=3*3

10=2*5

提示  先筛出所有素数,然后再分解。

数据规模和约定  

2<=a<=b<=10000

C++算法

代码语言:javascript
复制
#include<stdio.h>
#include<iostream>
#include<string.h>
#include<string>
#include <ctype.h> 
#include <math.h>  
using namespace std; 
int factor(int n)  
{  
    int i, j = (int)sqrt(n);  
    if (n % 2 == 0) return 2;  
    for (i = 3; i <= j; i++)  
        if (n % i == 0) return i;  
    return n;  
}  
  
int main()  
{  
    int i, j, k, m, n;  
    scanf("%d%d", &m, &n);  
    for (i = m; i <= n; i++)  
    {  
        j = factor(i);  
        k = i / j;  
        printf("%d=%d", i, j);  
        while (k > 1)
        {
            j = factor(k);
            k /= j;  
            printf("*%d", j);  
        }  
        printf("\n");  
    }  
    return 0;  
}  

本文链接:https://cloud.tencent.com/developer/article/1558033

本文采用CC BY-NC-SA 3.0 Unported协议进行许可,转载请保留此文章链接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 输入格式
  • 输出格式 
  • 样例输入
  • 样例输出
  • 数据规模和约定  
  • C++算法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档