• P2043 质因子分解


    题目描述

    对N!进行质因子分解。

    输入输出格式

    输入格式:

     

    输入数据仅有一行包含一个正整数N,N<=10000。

     

    输出格式:

     

    输出数据包含若干行,每行两个正整数p,a,中间用一个空格隔开。表示N!包含a个质因子p,要求按p的值从小到大输出。

    输入输出样例

    输入样例#1: 复制
    10
    输出样例#1: 复制
    2 8
    3 4
    5 2
    7 1

    说明

    10!=3628800=(2^8)*(3^4)*(5^2)*7

    哦哟,怎么这么多长得这么像的题啊。。。

    全都是质因数质因数。

    哦不对,这个是质因子hhh。

    好喜欢黑尾酱啊,

    黑尾酱太漂亮了❤。

    祝福李诞&&黑尾酱。

    来直接看看代码吧,

    我都快晕了。

    这个题!我大哥说了!:

    · 线筛
    · 求出1~n每个数的最小质因数
    · 然后O(n)枚举统计答案
     
    //对N!进行质因子分解。 
    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    #include<cmath>
    #include<cstring>
    using namespace std;
    
    int n,a[10002];
    
    int main()
    {
        scanf("%d",&n);
        for(int i=2;i<=n;++i)
        {
            int x=i;                        
            for(int j=2;j<=i;++j)
                while(x%j==0)
                {
                    a[j]++;
                    x/=j;
                }
        }
        for(int i=1;i<=10000;++i)
            if(a[i])
                printf("%d %d
    ",i,a[i]);
        return 0;
     } 
    //如果你不开心,那我就把右边这个zz大炸分享给你吧,
    //你看,他这么好看,跟个大傻子一样看着你,你还伤心吗?
    //一切都会过去的。
    //时间时间会给你答案2333

    这几个题,思路都差不多。

  • 相关阅读:
    GDI+中发生一般性错误
    反复
    一些网址
    控制listview大图标之间的间距
    android 系统移植
    android 启动报错
    android init.rc 语法分析
    Linux下的管道编程技术dup函数和dup2函数
    为了防止打开的设备 被占用
    android 多媒体框架
  • 原文地址:https://www.cnblogs.com/Mary-Sue/p/9168629.html
Copyright © 2020-2023  润新知