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

【蓝桥杯】BASIC-16 分解质因数

作者头像
喜欢ctrl的cxk
发布2019-11-13 14:28:13
4250
发布2019-11-13 14:28:13
举报
文章被收录于专栏:Don的成长史Don的成长史

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42449444/article/details/102984695

题目描述:

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

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

输入描述:

输入两个整数a,b(2<=a<=b<=10000)。

输出描述:

每行输出一个数的分解,形如k=a1*a2*a3...(a1< =a2< =a3...,k也是从小到大的)。

输入样例:

代码语言:javascript
复制
3 10

输出样例:

代码语言:javascript
复制
3=3
4=2*2
5=5
6=2*3
7=7
8=2*2*2
9=3*3
10=2*5

解题思路:

开局一个TLE,水题直接运行超时把我劝退。后来发现我超时的原因是判断素数的那段代码导致的。我一开始写的isPrime函数判断素数的时候不够快。

AC代码:

代码语言:javascript
复制
#include <bits/stdc++.h>
using namespace std;
#define Up(i,a,b) for(int i = a; i <= b; i++)

//万恶的TLE 超时了
// bool isPrime(int n)    
// {
//     if(n <= 1) return false;
//     Up(i,2,sqrt(n))
//     {
//         if(n%i == 0) return false;
//     }
//     return true;
// }

int isPrime(int n)  //很神奇,以后我不要用上面的方法来判断素数啦
{
    if(n <= 1) return 0;
    else if(n==2 || n==3) 
    {
        return 1;
    }
    else
    {
        for(int i = 2; i*i < n; i++)
        {
            if(n%i == 0) return 0;
        }
        return 1;
    }
}

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0),cout.tie(0);
    int a,b;
    cin >> a >> b;
    Up(i,a,b)
    {
        int _ = i;
        cout << _ << "=";
        bool virgin = true;
        while(_ != 1)
        {
            Up(j,2,_)
            {
                if(isPrime(j) && _%j==0)
                {
                    _ /= j;
                    cout << (virgin?"":"*") << j;
                    virgin = false;
                    break;
                }
            }
        }
        cout << endl;
    }  
    return 0;
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目描述:
  • 输入描述:
  • 输出描述:
  • 输入样例:
  • 输出样例:
  • 解题思路:
  • AC代码:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档