分解质因数答疑 为什么只需要枚举到根号N 为什么n % i == 0就是质数

简介: 分解质因数答疑 为什么只需要枚举到根号N 为什么n % i == 0就是质数

什么是分解质因数:

题目描述:

输入样例:

2
6
8

输出样例:

2 1
3 1
2 3

思路:

为什么只需要枚举到根号N

为什么n % i == 0就是质数

因为在枚举到i之前已经把n中2到i-1的质因子除干净了,此时n中不含2到i-1的质因子,由于n为i的倍数,所以i中也不包含2到i-1的质因子。如果i可以整除前面的i - 1中的数那么i = x * (i - 1),n = x2 * (x * (i - 1));

矛盾了

代码:

#include <iostream>
using namespace std;
void divide(int n)
{
    for (int i = 2; i <= n / i; i++) 
        {
            if (n % i == 0)
            {
                int s = 0;
                while (n % i == 0)
                    {
                        n /= i;
                        s++;
                    }
                cout << i << " " << s << endl;
            }    
        }
    //单独处理大于根号N的质因数
    if (n > 1)  cout << n << " " << 1 << endl;
    cout << endl;
}
int main()
{
    int n;
    cin >> n;
    while (n--)
        {
            int x;
            cin >> x;
            divide(x);
        }
    return 0;
}
目录
相关文章
|
Kubernetes 网络性能优化 调度
聊聊 K8S pod 的 QoS(Quality Of Service)
聊聊 K8S pod 的 QoS(Quality Of Service)
|
Ubuntu
ubuntu下安装火狐浏览器及快捷图标
ubuntu下安装火狐浏览器及快捷图标
2748 0
ubuntu下安装火狐浏览器及快捷图标
|
机器学习/深度学习 算法 计算机视觉
YOLOv8改进-论文笔记】 AKConv(可改变核卷积):任意数量的参数和任意采样形状的即插即用的卷积
AKConv是一种可改变核卷积,旨在解决传统卷积的局限,包括固定大小的卷积窗口和卷积核尺寸。AKConv提供灵活的卷积核参数和采样形状,适应不同尺度特征。其创新点包括:1)支持任意大小和形状的卷积核;2)使用新算法确定初始采样位置;3)应用动态偏移调整采样位置;4)优化模型参数和计算效率。AKConv已应用于YOLOv8,提高网络性能。相关代码可在<https://github.com/CV-ZhangXin/AKConv>找到。
|
SQL 监控 安全
命令注入攻击
【8月更文挑战第17天】
1065 2
|
C语言
【数据结构】二叉树(c语言)(附源码)
本文介绍了如何使用链式结构实现二叉树的基本功能,包括前序、中序、后序和层序遍历,统计节点个数和树的高度,查找节点,判断是否为完全二叉树,以及销毁二叉树。通过手动创建一棵二叉树,详细讲解了每个功能的实现方法和代码示例,帮助读者深入理解递归和数据结构的应用。
1679 9
|
数据可视化 前端开发 数据管理
电商项目之项目背景介绍|学习笔记
快速学习电商项目之项目背景介绍
电商项目之项目背景介绍|学习笔记
|
运维 安全 Devops
DevOps实践:持续集成与持续部署(CI/CD)的自动化之路
【10月更文挑战第22天】在软件交付的快速迭代中,DevOps文化和实践成为企业加速产品上市、保证质量和提升客户满意度的关键。本文将通过一个实际案例,深入探讨如何利用持续集成(Continuous Integration, CI)和持续部署(Continuous Deployment, CD)实现软件开发流程的高效自动化,包括工具选择、流程设计以及问题解决策略。我们将一起探索代码从编写到部署的全自动化旅程,揭示其对企业运维效率和产品质量所带来的深远影响。
|
网络协议 网络性能优化 UED
|
安全 Shell 网络安全
【专栏】通过SSH在远程和本地系统间传输文件的主要四种方法
【4月更文挑战第28天】本文介绍了通过SSH在远程和本地系统间传输文件的四种方法:1) SCP,适用于熟悉命令行的用户;2) SFTP,提供更丰富的文件管理功能;3) SSHFS,可将远程文件系统挂载至本地;4) 图形化工具,如FileZilla和WinSCP,操作简便。根据需求、技能水平和系统环境选择合适的方法,并注重安全设置以确保文件传输的安全可靠。
5797 7
|
存储 人工智能
数据结构——图详解及代码实现
数据结构——图详解及代码实现

热门文章

最新文章

下一篇
开通oss服务